/_coffeeclass.io

Free programming and computer science tutorials. Learn through tutorials, snippets, guides, or learn modules.

Primary LanguageTypeScriptMIT LicenseMIT

coffeeclass.io header image

coffeeclass.io โ˜•

Learn programming and computer science for free.

Project Overview

This website is a platform to learn to code. It is inspired by sites like freeCodeCamp and CSS Tricks. coffeeclass.io is open source and we encourage contributions to both the website itself and the content! Read on to learn more about the project.

Quick Start

  1. Clone this repo: git clone https://github.com/carlson-technologies/coffeeclass.io.git
  2. Move into root (where this file is) and run yarn
  3. (Optional) Create a .env file and copy into it the content of .env.example. It will run without these.
  4. Run yarn dev to start the server
  5. Navigate to http://localhost:3000

If you are creating a PR, create a new branch. Before you commit run yarn build. This will run the tests and make sure everything is working.

Note: If you are not planning on making a PR, you can run rm -rf .git to remove git tracking.

Tech Stack Overview

  • ๐Ÿš€ Next.js - Framework
  • ๐ŸŽจ Chakra UI - CSS Component Library
  • ๐Ÿ“œ TypeScript (and some JavaScript) - Web language of choice
  • ๐Ÿงช Jest - Testing
  • โœ๐Ÿผ MDX - Database for Article, Authors, Courses, Tags
  • ๐Ÿ”บ Vercel - Deployment
  • ๐Ÿ’ป GitHub - Version Control
  • ๐Ÿ“Š Google Analytics - Analytics
  • ๐Ÿ Splitbee - More Analytics
  • ๐Ÿ”Ž Algolia - Search

Besides the above, this site uses additional yarn packages and some other smaller external software.

Deep(er-ish) Dive

This repo is broken up into 4 main parts.

  • src: This is the Next.js website.
  • content: This is the content for the website stored in mdx files.
  • public: This is the static assets for the website.
  • tests: Jest unit tests for the website.

Inside the src folder, we have the following:

  • components: Our UI components.
  • configs: Various configuration files for courses.
  • pages: Where the pages (routes) and api routes are stored.
  • scripts: Stand alone scripts (DRY) and build scripts
  • styles: Theme styles and Chakra UI default theme config.

Open Source

This entire project is open source. We encourage contributions! Read on to see how you can contribute.

Contributing an Article

If you want to contribute an article please follow the steps on https://www.coffeeclass.io/contribute/getting-started/

Contributing to the Website

You can also contribute to the website itself. New features and bug fixes are always appreciated. Feel free to check out the Roadmap ๐Ÿš— for future plans and what we're working on currently. If you see anything you want to tackle, feel free to leave a comment on the Roadmap user story and open a PR!

Roadmap ๐Ÿš—

Our roadmap is also our agile development process. View cards, see what we are working on, view future plans and more on the roadmap.

https://benjamincarlson.notion.site/609b8bb171844146a9bcd9fbabd171a8?v=341de17fff6149bea36dbafbe2f2cf88

Vercel

Powered by Vercel Logo