https://github.com/btawaifi/trello-todo-app
A Fullstack Application That Allows Custom Communication with Trello's REST API
https://github.com/btawaifi/trello-todo-app
docker express nodejs react reactjs redis rest-api trello-api
Last synced: 2 months ago
JSON representation
A Fullstack Application That Allows Custom Communication with Trello's REST API
- Host: GitHub
- URL: https://github.com/btawaifi/trello-todo-app
- Owner: BTawaifi
- Created: 2021-09-14T20:12:24.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2022-02-11T16:47:39.000Z (over 4 years ago)
- Last Synced: 2025-08-12T00:38:50.111Z (11 months ago)
- Topics: docker, express, nodejs, react, reactjs, redis, rest-api, trello-api
- Language: TypeScript
- Homepage:
- Size: 1.57 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# BTawaifi trello-todo-app
> A Fullstack Application That Allows Custom Communication with Trello
## Quick Start
## Acquire Necessary Enviromental Variables
```bash
# Navigate To
https://trello.com/app-key
# Store your Key then generate a token by clicking on Generate Token (store it also)
# Create a .env file and write the following (or edit enviromental variables on the webhost)
Trello_Key= {your app key}
Trello_Token= {your generated token}
# Run the Express server to get your board id
cd server
npm run server
Navigate to '/boards' route in the browser url ex:"http://localhost:5000/boards"
# Store your board ID and add to .env file
Trello_Token= {your generated token}
# Continue by restarting the server and running the client
```
## Redis Standalone Setup (Cache Server Optional)
### For Windows download and install the service
```bash
https://github.com/tporadowski/redis/releases
```
### For Docker just run the following command
```bash
docker run -d --name redis -p 6379:6379 redis
# for further documentation visit: https://hub.docker.com/_/redis
```
- Redis requires further configuration by providing a redis.conf file
- Docker containers will need network linking if they aren't on the bridge network
- set REDIS_HOST env variable for the api server to redis container name if it's not connecting
## Setup using NPM
```bash
# Change directory to server directory
cd server
# Install dependencies for server
npm install
# Install dependencies for client
npm run client-install
# Create a .env file and write the following (or add enviromental variables on the webhost)
REDIS_HOST: {redis server ip (container name or ip in case of docker usage) }
REDIS_PORT: {redis server port}
Trello_Key= {your app key}
Trello_Token= {your generated token}
Trello_Board_ID= {your chosen Board id}
-> Start Redis
# Run the client & server with concurrently
npm run dev
# Run the Express server only
npm run server
# Run the React client only
npm run client
# Server runs on http://localhost:5000 and client on http://localhost:3000
# If the server is not on localhost add or edit .env on the client
GENERATE_SOURCEMAP=FALSE
REACT_APP_Server_URL="http://localhost:5000"
```
## Setup using Docker
```bash
# Edit docker-compose.yml with your own enviromental variables
REDIS_HOST: {redis container name or ip}
REDIS_PORT: {redis container port}
Trello_Key= {your app key}
Trello_Token= {your generated token}
Trello_Board_ID= {your chosen Board id}
# Run the Following Commands
docker build -t "react-app" ./client/
docker build -t "api-server" ./server/
# Start The Containers
docker-compose up
# To Stop The Containers
docker-compose down
# Server runs locally on http://localhost:5000 and client on http://localhost:3000
```
- If you are facing connection issues on windows set WSL Adapter's IP to DHCP and DNS to Auto
- If you want to use vpn you need to restart docker after you connect