The official website for DevHub, a developer community focused on helping people learn, build, and connect with other developers. This repository contains the source code for the website, including the landing page, community rules, guides, resource library, articles, and partners page.
If you're new here, welcome! This README is designed to guide you from cloning the repository to making your first contribution, even if you've never worked with this codebase before.
DevHub is a developer community focused on helping programmers learn, collaborate, and grow together.
The website brings together community resources in one place, including:
- π Learning guides for developers
- π οΈ Curated tools and useful resources
- π Articles and tutorials
- π€ Community information and onboarding guides
- π Rules, FAQs, and moderation guides
- β€οΈ Open-source contribution opportunities
If you're new to open source, this project is a great place to start because documentation improvements, bug fixes, and feature enhancements are all welcome.
- Landing page: introduction to DevHub and what the community offers
- Pages: guides like Getting Started, How to Ask, How to Help, Code of Conduct, Contributing, Moderation Guide, Staff Roles, FAQ, and more
- Resource library: curated tools and learning materials
- Articles: write-ups from the community
- Rules: the server and community rules in one place
- Partners: communities and projects DevHub partners with
| Technology | Purpose |
|---|---|
| Next.js | React framework used to build the website |
| TypeScript | Adds static typing to JavaScript |
| Tailwind CSS | Utility-first CSS framework for styling |
| GSAP & Framer Motion | Animation libraries |
| React Bits | UI component library |
| Lucide | Icon library |
| Vercel | Deployment platform |
You don't need to know all of these before contributing. Most changes only touch one or two of them at a time.
Follow the steps below to run the project on your own computer.
Don't worry if you've never worked with a Next.js project beforeβeach step is explained.
Before you begin, make sure you have the following installed:
- Node.js 18 or later
- A package manager such as npm, bun, pnpm, or yarn
- Git
Note: This guide uses npm for all examples. If you prefer bun, pnpm, or yarn, you can use the equivalent commands instead.
You can verify your installation by running:
node -v
npm -v
git --versionClone the project from GitHub:
git clone https://github.com/open-devhub/website.gitMove into the project directory:
cd websiteThis project depends on several external packages. Install them using:
npm installThis may take a few minutes the first time.
Run:
npm run devThe development server will start locally.
Open your browser and visit:
http://localhost:3000
Whenever you save changes to the code, the browser automatically refreshes so you can instantly see your updates.
Once the development server is running, open your browser and visit:
http://localhost:3000
You should see the DevHub homepage. Try navigating to a few pages to make sure everything loads correctly.
If you've made changes, save your files and verify that the browser updates automatically.
Below is an overview of the repository structure to help you locate important files and folders.
βββ app/ β Pages of the site (Next.js App Router)
β βββ api/ β API routes (e.g. link previews)
β βββ pages/ β Renders the guide pages (Getting Started, FAQ, etc.)
β βββ articles/ β Article listing + individual article pages
β βββ partners/ β Partners page
β βββ resources/ β Resource library page
β βββ rules/ β Community rules page
βββ components/ β Reusable React components
β βββ home/ β Landing page sections (Hero, Features, Stats, etc.)
β βββ site/ β Shared layout pieces (Navbar, Footer, Section)
β βββ ui/ β Generic building blocks (buttons, dialogs, badgesβ¦)
β βββ bits/ β Visual/animation effects (glow, fuzzy text, cursor)
βββ content/ β Site copy and structured data
β βββ pages/ β Content for the guide pages
β βββ articles/ β Article content
β βββ resources.ts β Resource library data
β βββ rules.ts β Community rules data
βββ lib/ β Shared utility code
β βββ markdown/ β Markdown parser used for articles/pages
β βββ animations.ts β Shared animation configs
β βββ colors.ts β Color system used across the site
β βββ utils.ts β General helper functions
βββ hooks/ β Custom React hooks
We welcome contributions from developers of all experience levels, including first-time contributors!
A typical contribution workflow looks like this:
- Fork this repository to your GitHub account.
- Clone your fork locally.
- Create a new branch.
git checkout -b feature/my-new-feature- Make your changes.
- Test your changes locally.
- Run the linter:
npm run lint- Commit your changes.
git commit -m "feat: add awesome feature"- Push your branch.
git push origin feature/my-new-feature- Open a Pull Request describing what you changed and why.
New to open source? Look for issues tagged good first issue. These are picked specifically to be approachable for first-time contributors.
For a more detailed contribution guide, coding standards, and pull request expectations, please see CONTRIBUTING.md.
| Command | Description |
|---|---|
npm run dev |
Starts the local development server. |
npm run build |
Creates an optimized production build. |
npm run start |
Runs the production build locally. |
npm run lint |
Checks your code for linting issues. |
npm run typecheck |
Check for type errors. |
npm run format |
Formats the project using Prettier. |
Before opening a Pull Request, make sure your changes work as expected.
Run the linter:
npm run lintThen start the development server:
npm run devOpen the website in your browser and verify that your changes appear correctly and don't introduce any issues.
If the project adds automated tests in the future, be sure to run those as well before submitting your contribution.
Make sure you're using Node.js 18 or later.
Run the development server on another port:
npm run dev -- -p 3001Delete the node_modules folder and reinstall dependencies:
rm -rf node_modules
npm installWant to get involved? We'd love to have you!
- Website: devhub.vercel.app
- Discord: Join DevHub β Ask questions, connect with other developers, and stay up to date with the community.
- GitHub: open-devhub β Explore our projects and contribute.
- Email: open-devhub@outlook.com β Reach out for general inquiries or support.
Licensed under the GNU GPL v3.0 License. See the LICENSE file for details.
Thanks to everyone who has contributed to this repository!