Dijkstra.org β’ Forum β’ Docs β’ Contributing β’ LinkedIn β’ Discord
Dijkstra is a community-driven, open-source platform aimed at bridging the skill and opportunity gap for students from Tier-2 and Tier-3 colleges in India. We empower Computer Science enthusiasts to become industry-ready through:
- π A student-led open-source community fostering mentorship, learning, and growth.
- π Curated paths for mastering CS fundamentals, development skills, and soft skills.
- π» Real-world project experience via collaborative app and platform development.
Whether you're interested in learning, contributing, or just exploring, Dijkstra is the platform for you.
"Run by students, for students."
-
π Visibility
Track your progress across all platforms β GitHub, LinkedIn, LeetCode, Codeforces, etc. See yourself level up in terms of skills, validated by Proof of Work, to prepare for jobs around the world. -
π οΈ Develop Skills
Improve your DSA, Software Engineering, and Systems Design holistically through a variety of tasks within Dijkstra. Whether itβs code contributions, writing articles, sharing new approaches, or leading projects β itβs all about developing into a globally competitive software developer. -
β Proof of Work
Dijkstra is your platform to track overall developer growth, tied to visible outputs (GitHub commits, LeetCode stats, LinkedIn activity). The goal is to gamify your growth and help you plan your journey effectively. -
π― Killing Two Birds with One Stone
Projects arenβt just for GitHub. A good project could become a conference paper. A solid LinkedIn post could be added to your resume. Dijkstra helps connect the dots to maximize your output with smarter planning. -
π Community
Give back by writing articles, contributing code, and helping others β in turn, boosting your credibility and visibility in the tech ecosystem. -
π One Thing Leads to Another
Every action you take β internships, articles, papers β creates leverage for future opportunities. Dijkstra helps make sure your efforts lead somewhere bigger and better.
π§ This section is focused on Onboarding and is currently a work in progress.
For now, use the links below to get started:
- π Login
- π Onboarding (Sign Up)
More detailed onboarding guides, examples, and templates will be added soon. Stay tuned!
- Node.js (v18.14.2 or higher)
- npm, yarn, or pnpm
- GitHub account (for OAuth authentication)
git clone https://github.com/Dijkstra-Edu/Dijkstra-Web.git
cd Dijkstra-Web
# using npm
npm install
# or using yarn
yarn install
# or using pnpm
pnpm install
# or using bun
bun install
Then run:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
β οΈ This section is currently being revised and may change.
Please refer to the upcoming GitHub issue for finalized.env
and OAuth setup instructions.
You can still create a .env.local
file for local testing, but values like NEXTAUTH_SECRET
, GITHUB_CLIENT_ID
, and others are under review.
β οΈ GitHub OAuth environment configuration is currently under review and may change.
Full setup steps will be provided once finalized.
In the meantime, you may explore the project using mock data or without authentication if supported.
Stop the server (if running):
Ctrl + C
Then restart:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Now open http://localhost:3000 in your browser to view the Dijkstra Web Client.
π οΈ This section is still being built. For now, tasks are organized into three fixed phases only.
There's a LOT to be done. Feel free to pick up a task from this list, or try tackling issues from the Issues section. You're welcome to suggest any features, fixes, or improvements β your ideas shape Dijkstra and its potential to impact thousands of students around the world!
We welcome contributions from everyone, whether you're a first-time contributor or an experienced developer! Follow these steps to contribute effectively:
- Check the tasklist and Issues to pick something you'd like to work on.
- Join our Discord to connect with the team and ask questions.
- Read this guide carefully to ensure smooth collaboration.
Refer to the Development Setup section above for detailed instructions.
Make sure youβre using:
- Node.js β₯ v18.0.0
- npm β₯ v9.0.0
- Fork the repository.
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/Dijkstra-Web.git cd Dijkstra-Web
- Create a new branch for your feature/fix:
git checkout -b feat/your-feature-name
- Make your changes locally.
- Test everything before committing:
- Lint your code.
- Ensure your feature works as expected.
- Commit with a meaningful message:
git commit -m "feat: added feature XYZ"
- Push your branch to your fork:
git push origin feat/your-feature-name
- Open a Pull Request (PR) to the
main
branch of the upstream repo.
- Keep your PRs small and focused.
- Link the related issue in your PR description.
- Add screenshots or demos where applicable.
- Document new features and update relevant sections.
- Use Conventional Commits format for commit messages.
Weβre more than just code β weβre a learning community!
- π¬ Join the conversation on Discord. Ask questions, get help, or just say hi!
- π§βπ» Pair program with others to learn and grow together.
- πͺ Contribute to discussions on issues, feature requests, and roadmaps.
- π£ Share your work β show off what youβve built with Dijkstra-Web!
Whether you're a beginner or a pro, there's a place for you here π
This project exists thanks to all the people who contribute.
We would like to thank all contributors and community members who helped make this project possible.
Β© 2025 Dijkstra-Edu. All rights reserved.
This project is licensed under the MIT License.
You are free to use, modify, and distribute this software under the conditions of the license.