initial commit on needle