Skip to content

programming-in-th/programming.in.th

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

programming.in.th

programming.in.th

Powered by Vercel

What is programming.in.th

A website for practicing algorithms, data structures and competitive programming. Includes all the resources you need to go from 0 to 1 in algorithms and data structures.

Table of Contents

Stack

React, Next.js (App Router), Prisma and live on Vercel with Serverless Functions

Getting started

This section provides a quick start guide for our project.

Prerequisites

Please install correct version of Node.js and pnpm, you can use nvm and corepack to manage versions easier.

Installation

  1. Make sure all the prerequisites are installed.
  2. Fork programming.in.th repository, https://github.com/programming-in-th/programming.in.th.git
  3. Clone your forked repository.
  4. Run pnpm i to install needed packages.
  5. Run pnpm dev to start the application. You can access it via http://localhost:3000/.

How to populate .env

If you only want to contribute to our UI, just fill in database URL, which can be run on your local machine, then run migration and seed script. You can also create Github OAuth app in your personal GitHub account to try it out.

Starting the application

Simply run pnpm dev will do the job.

Run E2E test

Start dev server first, then run pnpm test:e2e

Contributing

You too can help us improve our project by suggesting features, bug report, etc. by opening an issue, or create a pull request. If you want to contribute to submission related module (e.g. realtime view) and need live data, please, don't hesitate to contact us.

Core team

Active

Retired

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation. Please see the LICENSE for more information.