The Developer extension allows Goose to automate developer-centric tasks such as file editing, shell command execution, and project setup.
This tutorial will cover enabling and using the Developer MCP Server, which is a built-in Goose extension.
In this example, I'm going to have Goose automate setting up my JavaScript developer environment with Express, Mongoose, Nodemon, Dotenv and initialize Git.
I'll help you set up a new JavaScript project with those dependencies. I'll break this down into steps:
1. First, let's create a new directory and initialize the project
2. Then install the dependencies
3. Create a detailed README
4. Initialize git
5. Create some starter files
6. Let's begin:
[... shell commands, files created ...]
Great! I've set up a complete Express project with MongoDB and Dotenv integrations:
1. Created a new project directory and initialized npm
2. Installed Express, Mongoose, and dotenv dependencies
3. set up the basic project structure with directories for:
- config/
- models/
- routes/
- controllers/
4. Created essential files:
- index.js (main server file)
- .env (environment variables)
- .ignore (with common node.js ignores)
5. Added a basic user model with basic name and email fields
6. Created a user controller with two methods:
- getUsers (GET all users)
- createUser (POST new user)
7. Added user routes under `/api/routes`
8. Updated package.json with start scripts
9. Created a comprehensive README.md with:
- Installation scripts
- Project structure
- Available scripts
- Environment variables
- Latest package versions
The project structure is:
my-express-app/
├── config/ # Configuration files
├── models/ # MongoDB models
│ └── User.js # User model
├── routes/ # API routes
│ └── userRoutes.js
├── controllers/ # Route controllers
│ └── userController.js
├── .env # Environment variables
├── .gitignore # Git ignore file
├── index.js # Entry point
└── package.json # Project dependencies and scripts
To start developing you can:
1. Run `npm install` to install dependencies
2. start the server with `npm run dev`
The API will be available at:
- `http://localhost:3000/api/users` (GET to get all users)
- `http://localhost:3000/api/users` (POST to create a new user)
To test out the API you can use tools like postman or curl, for example, to create a new user:
curl x POST http://localhost:3000/api/users \
-H "Content-Type: application/json" \
-d '{"name": "Ebony Louis" , "email": "ebony@example.com"}'
Would you like me to add any additional features or make other improvements to the setup?
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4