OpenCodex
Full-Stack platform where developers can showcase their skills, projects, and availability to recruiters and collaborators worldwide.
Project README
OpenCodex Talent
<div align="center"> <h3>The premier open-source platform for discovering world-class developers.</h3> <p>A beautifully designed full-stack platform where developers can showcase their skills, projects, and availability to recruiters and collaborators worldwide.</p> </div>🚀 Features
- Public Developer Profiles: Shareable profile URLs (
/p/username) with detailed experience, skills, and open-source project portfolios. - Dynamic Exploration: Advanced filtering by tech stack, seniority, location, and remote availability.
- Private Dashboard: Complete profile and project management interface.
- Admin Panel: Role-based access control (RBAC) specifically tailored for cataloging and grouping new platform skills.
- SEO Optimized: Fully automated, dynamic XML sitemaps highlighting featured developers.
- Responsive & Accessible: Mobile-first design adopting glassmorphism aesthetics and dark mode integration.
🛠 Tech Stack
Frontend (User Interface)
- Framework: Next.js 16+ (App Router)
- Language: TypeScript
- Styling: Tailwind with CSS Modules and global variables
- Icons: Lucide React
- Theme:
next-themes(Dark/Light mode support)
Backend (API & Database)
- Framework: NestJS 10+
- Database: PostgreSQL
- ORM: Prisma
- Authentication: JWT (JSON Web Tokens)
- Validation:
class-validator&class-transformer
(For detailed backend documentation, see OpenCodex Repositories)
🏗 Modular API Architecture
The frontend integrates with the NestJS API via a scalable, zero-dependency, modular service pattern located in lib/api/:
client.ts— Corefetchwrapper handling Authorization headers implicitly.auth.service.ts— Handles login and registration.developer.service.ts— Handles fetching developer profiles, paginated search, and profile updates.project.service.ts— Handles standard CRUD operations for portfolios.skill.service.ts— Handles skill catalogue, assignment, and admin creation capabilities.
⚙️ Getting Started
Prerequisites
- Node.js: v18 or newer
- npm or yarn
- The NestJS backend running locally (typically on port 5000).
Standard Installation
-
Clone the repository
git clone https://github.com/Open-Codex/opencodex.git cd opencodex -
Install frontend dependencies
npm install -
Configure Environment Variables Create a
.env.localfile in the root directory:# Used by Client components NEXT_PUBLIC_API_URL=http://localhost:5000/api/v1 # Used by Server components (e.g. dynamic sitemaps) API_URL=http://localhost:5000/api/v1 -
Run the development server
npm run dev -
Open http://localhost:3000 with your browser to see the result.
🤝 Contributing
OpenCodex Talent is completely open-source. We welcome contributions from developers of all skill levels!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
📄 License
Distributed under the MIT License. See LICENSE for more information.