ForJobSeeker is a comprehensive job search and application platform that helps job seekers find remote job opportunities, create and update their profiles, and track their applications. This platform streamlines the job-seeking process and provides an intuitive user experience for individuals looking for remote job opportunities.
- Job Listings: Browse and search for remote job opportunities.
- Profile Management: Create and update job seeker profiles, including personal details, skills, experience, and more.
- Job Applications: Apply for jobs and track the status of applications.
- User Authentication: Secure user registration and login.
- Responsive Design: Optimized for mobile, tablet, and desktop devices.
- Node.js: JavaScript runtime for building scalable network applications.
- Express.js: Fast, minimalist web framework for Node.js.
- TypeScript: Typed superset of JavaScript that compiles to plain JavaScript.
- Prisma: Modern ORM for TypeScript and Node.js.
- Angular 18: Framework for building client-side applications.
- Tailwind CSS: Utility-first CSS framework for rapid UI development.
The folder structure of the ForJobSeeker project is as follows:
```plaintext
forjobseeker/
├── backend/
│ ├── src/
│ │ ├── controllers/ # Controllers for handling requests
│ │ ├── middlewares/ # Middleware functions
│ │ ├── models/ # Prisma models
│ │ ├── routes/ # Route definitions
│ │ ├── services/ # Business logic services
│ │ ├── utils/ # Utility functions
│ │ └── index.ts # Main entry point for the backend server
│ ├── prisma/ # Prisma schema and migrations
│ └── package.json # Backend dependencies and scripts
│
├── frontend/
│ ├── src/
│ │ ├── app/ # Main Angular application module
│ │ ├── components/ # Reusable UI components
│ │ ├── pages/ # Page-level components
│ │ ├── services/ # Services for API calls and state management
│ │ └── main.ts # Main entry point for the Angular application
│ └── package.json # Frontend dependencies and scripts
│
├── .gitignore # Git ignore file
├── README.md # Project documentation
└── LICENSE # License for the project
Clone the Repository:
```bash
git clone https://github.com/victorpreston/forjobseeker.git
Navigate to the Project Directory:
```bash
cd forjobseeker
Install Backend Dependencies:
```bash
cd backend
npm install
Set Up Environment Variables:
Create a .env
file in the backend directory with the following content:
Run the Backend Server:
```bash
npm run dev
Navigate to the Frontend Directory:
```bash
cd ../frontend
Install Frontend Dependencies:
```bash
npm install
Start the Frontend Server:
```bash
npm start
Once both the backend and frontend servers are running, access the application at http://localhost:4200 to browse job listings, manage your profile, and apply for jobs.
Contributions are welcome! Please follow these steps if you'd like to contribute to the ForJobSeeker project:
- Fork the repository.
- Create a new branch
(git checkout -b feature-branch).
- Make your changes and commit them
(git commit -m 'Add new feature')
. - Push to the branch
(git push origin feature-branch)
. - Open a pull request.