FEC Backend is a backend service for a modern club management system of Faridpur Engineering College, built with Node.js, Express.js, and MongoDB (Mongoose).
It powers the core functionalities of the platform such as user authentication, club management, and API endpoints for the frontend.
FEC Backend-server/
βββ src/
β βββ config/ # Database connection & environment configs
β βββ controllers/ # Business logic & request handlers
β βββ middlewares/ # Authentication, error handling, etc.
β βββ models/ # Mongoose schemas and models
β βββ routes/ # API routes
β βββ app.js # Express application setup
β βββ index.js # Entry point of the backend server
βββ .env # Environment variables (not committed)
βββ .env.example # Environment variables template
βββ .gitignore # Git ignore rules
βββ package.json # Dependencies and scripts
βββ vercel.json # Vercel deployment config
βββ README.md # Project documentation
git clone https://github.com/Abdulal-Roman09/Fec_Backend
cd FEC Backend-servernpm installCopy the example environment file and update with your values:
cp .env.example .envEdit the .env file:
PORT=8000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key_here
NODE_ENV=development# Development mode (with auto-reload)
npm run dev
# Production mode
npm startServer will start at:
π http://localhost:8000
| Command | Description |
|---|---|
npm run dev |
Run server with nodemon (dev) |
npm start |
Run server in production mode |
npm test |
Run test suite (if available) |
- Node.js β JavaScript runtime
- Express.js β Web framework
- MongoDB β NoSQL database
- Mongoose β ODM for MongoDB
- JWT β Authentication tokens
- bcryptjs β Password hashing
- cors β Cross-origin resource sharing
- dotenv β Environment variables
- User registration & login
- JWT-based authentication
- Protected routes
- User profile management
- Create, read, update, delete properties
- Property search and filtering
- Image upload support
- Property categories and types
- Favorites system
- Property reviews and ratings
- Advanced search with filters
- Pagination support
- π Admin dashboard APIs
- π Location-based search
- π¬ Real-time chat system
- π± Push notifications
- π³ Payment integration
- π Analytics and reporting
- π Advanced search with AI recommendations
| Role | Name / GitHub Profile |
|---|---|
| π¨βπ» Core Member | Abdul Al Roman |
To maintain code quality and avoid conflicts, every team member must work on feature branches.
-
Always start with the latest main branch:
git checkout main git pull origin main
-
Create a new feature branch:
git checkout -b feature/your-feature-name # or git checkout -b fix/issue-description -
Make your changes and commit:
git add . git commit -m "feat: add property search functionality" # Use conventional commit messages: # feat: for new features # fix: for bug fixes # docs: for documentation # style: for formatting # refactor: for code refactoring
-
Push your branch to GitHub:
git push origin feature/your-feature-name
-
Create a Pull Request (PR):
- Go to GitHub repository
- Create PR from your branch to
main - Add description of changes
- Request review from team members
-
After PR approval:
- Team lead will merge the PR
- Delete the feature branch
# Fetch latest changes from main
git fetch origin
# Rebase your feature branch
git checkout feature/your-feature-name
git rebase origin/main
# Resolve any conflicts if they occurFound a bug? Please create an issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Screenshots if applicable
- Backend Repository: https://github.com/Abdulal-Roman09/Fec_Backend
- Frontend Repository: https://github.com/Abdulal-Roman09/Fec_Club_Hub_Client
- API Deployment: https://fec-backend.vercel.app/
- Frontend Application: https://github.com/Abdulal-Roman09/Fec_Club_Hub_Client
This project is licensed under the ISC License.
We welcome contributions! Please:
- Fork the repository
- Create your feature branch
- Follow the coding standards
- Add tests if applicable
- Submit a pull request
π‘ FEC Backend β Building the future of college club management, one line of code at a time.