Paw now, soar later!
unpaws is an innovative app designed to match students with companies for apprenticeships and internships. Our goal is to help students gain hands-on experience and kickstart their careers.
unpaws connects ambitious students with exciting opportunities in various industries. By facilitating these connections, we aim to:
- Provide students with real-world work experience
- Help companies find fresh talent
- Bridge the gap between academic learning and professional skills
- Give a platform Student-focused to help them in a difficult time of searching
Our mascot, a clever and curious raccoon, represents the spirit of exploration and adaptability that we encourage in our users. (Might exist one day, might never see the light. Nobody knows!)
This project is a basic React SaaS application for managing a fictive students apprenticeship job-board. It provides :
- An admin dashboard to manage student/professionals profiles, job listings, and company information.
- A user-focused application to find, post, candidate and chat about opportunities (WIP)
- React
- Next.js (public app)
- TypeScript
- Material-UI (admin, getting rid of)
- Axios for API calls
- React Router for navigation
- Vite as the build tool and development server (admin)
- Docker for containerization
- Nginx for reverse proxy
- mongodb for Databases
- node.js Express for the api definitions and routing
- Jest and React Testing Library for unit and integration testing
- Cypress for end-to-end testing
- Storybook for component documentation and testing
- React Query for efficient data fetching and caching
- Firebase or AWS Amplify for authentication and backend services (not sure yet)
- Admin
- Student profile management (CRUD operations)
- Responsive table with filtering, sorting and pagination
- Search functionality for tables
- Responsive layout
- Themes : Light / Dark mode
- Public App
- Offer listings
- Card components
- Searching & filtering
- Responsive layout
- Themes : Light / Dark mode
- Company/Student frontend profile management
- Job listing creation and management
- Application tracking system
- Matching algorithm for students and job listings
- Reporting and analytics dashboard
- User authentication and role-based access control
- Messaging system between students and companies + Support
- Resume builder for students
- Interview scheduling tool
- Complete admin dashboard functionality
- Develop user-facing applications for students and companies
- Implement authentication and authorization
- Create job listing and application management features
- Develop matching algorithm
- Add messaging system
- Implement analytics and reporting
- Enhance UI/UX based on user feedback
- Optimize performance and scalability
- Implement additional features based on user needs
// Not actual, got to update this part (16/09/24)
- Set up project structure and core dependencies
- Implement basic CRUD operations for student profiles
- Create responsive UI components
- Implement sorting, pagination, and search functionality
- Set up API integration
- Implement state management solution
- Add user authentication and authorization
- Develop company and job listing management features
- Create matching algorithm
- Implement messaging system
- Add analytics and reporting features
- Optimize performance and implement caching strategies
- Set up testing infrastructure and write tests
// Not actual, got to update this part (16/09/24)
- Docker
- Docker Compose
-
Clone the repository:
git clone https://github.com/evanhzg/unpaws.git cd unpaws -
Add the following entries to your
/etc/hostsfile to set up reverse proxies:127.0.0.1 unpaws.loc 127.0.0.1 admin.unpaws.loc 127.0.0.1 api.unpaws.loc -
Start the Docker containers:
docker-compose up --build
-
Open your browser and navigate to:
I am using this project to learn React faster. It is not intended for production use anytime in the future. Here are some of the resources I use to learn:
- Icons are from Iconify
- I use Zen Browser, which is very clean and compact.
I am Evan Hoizey, and I am looking for an apprenticeship in Lyon, Auvergne-Rhône-Alpes, France.
Just me, for now.
No license as of now.