add basic function for dnd
update gitignore