This repository contains the source for the community showcase website maintained by the React Developers Community (Kenya). The site is built with Next.js, TypeScript and Tailwind CSS, includes end-to-end tests with Playwright, and is container-ready using Docker.
Live production: https://www.reactdevske.org/
Table of contents
- Overview
- Features
- Tech stack
- Quickstart
- Docker
- Testing
- Project structure
- Contributing
- License & contact
Overview
This site showcases the community, upcoming events, contact information and resources for React developers in Kenya. It's intended as a community-maintained, easy-to-contribute codebase for public-facing content and event announcements.
Features
- Responsive, accessible UI built with Next.js and Tailwind CSS.
- Pages for home, about, contact, events, news, forum and members.
- Reusable component library under
src/components. - Playwright end-to-end tests (see
e2e/). - Docker support for production-like local testing.
Tech stack
- Next.js (pages-based) + React
- TypeScript
- Tailwind CSS
- Playwright for E2E testing
- Prettier, ESLint, and TypeScript for quality checks
Quickstart (local development)
Prerequisites:
- Node.js 16+ (or the version compatible with the
nextdependency) - npm or yarn
Install dependencies:
npm install
# or
yarn install Run the development server:
npm run dev
# opens at http://localhost:3000Build for production:
npm run build
npm run startUseful scripts (from package.json):
npm run dev— starts Next.js in development modenpm run build— produces a production buildnpm run start— runs the production buildnpm run lint— runs ESLintnpm run test— runs Playwright tests
Docker
This repository contains a Dockerfile and docker-compose.yml for running the app in a container.
Build & run with Docker Compose:
docker-compose up --buildThe app will be available on the port configured in docker-compose.yml (default: 3000).
Testing (Playwright)
End-to-end tests are in the e2e/ folder and are run using Playwright. To run tests locally:
npm run testPlaywright config is at playwright.config.ts.
Project structure (important files & folders)
public/— static assets (images, manifest)src/pages/— Next.js pages (routes)src/components/— shared React components (Navbar, HeroHeader, Events, ContactUs, etc.)src/styles/— global and module CSS (Tailwind entry)e2e/— Playwright end-to-end testsDockerfile,docker-compose.yml— container configurationpackage.json,tsconfig.json,next.config.js— build & tooling
If you want to explore components, start with:
src/components/HeroHeader— site herosrc/components/Navbar— navigation and menusrc/components/Events— events listing and displaysrc/components/ContactUs— contact form and footer
Contributing
Contributions are welcome. Please follow the contribution guidelines and community standards:
- Contribution guide: CONTRIBUTING.md
- Code of conduct: CODE_OF_CONDUCT.md
Suggested workflow:
- Fork the repo and create a feature branch.
- Run the dev server and make changes.
- Ensure TypeScript and lint checks pass:
npm run typecheckandnpm run lint. - Add/update tests if applicable.
- Open a pull request with a clear description of your changes.
Maintainers & contact If you need help or want to propose changes not suitable for a PR, open an issue or reach out via the community channels listed in the repo.
License
This project is open source — see the LICENSE file for details.
Design resources Figma design file used for the website is available here: https://www.figma.com/file/TVwnaDhBGeVdnVKdf6H91C/React-developers-community-website
Last updated: 2026-02-15
