HomePage
Browser Startpage created in React & Node. Also works well in mobile since it's a PWA.
Some of the functionalities
- Current time
- Current weather based on location
- Gmail latest emails
- Github notifications
- Todoist (task manager) integration
- Favourite websites
- Google search
- Dribbble feed
- News feed
- HackerNews feed
- Movies feed
- TV Shows feed
Prints
How to use
- First make sure you have node installed on your machine
- Using your terminal, 'cd' to the folder you want and do ‘git clone https://github.com/nixton9/HomePage.git’
- ‘cd HomePage’
- ‘npm install’
- 'cd client'
- ‘npm install’
- 'cd ..'
- Create a .env file on the 'client' folder with the following keys for the features you want:
- Google API Client ID & Google API Key for Gmail - REACT_APP_GOOGLE_CLIENT_ID & REACT_APP_GOOGLE_API_KEY
- OpenWeatherMap API key for Weather - REACT_APP_WEATHER_API_KEY
- NewsAPI key for News feed - REACT_APP_NEWS_API_KEY
- TheMoviesDB API key for Movies & TV Shows feeds - REACT_APP_MOVIES_API_KEY
- Tiingo API key for stocks data feed - REACT_APP_TIINGO_KEY
- Password for 'login' - not optional - REACT_APP_LOGIN_KEY
- Example for env file: https://imgurl.me/image/dhJnu
- To have news from your country, open file 'news.js' and change 'COUNTRYCODE' on line 6 to whatever country you want. See codes here
- Run locally with ‘npm run dev’
- App should open now on browser
- Open the settings and fill with name, Github API key, Todoist API key and the URL for a background image
- Check if everything is alright. If so, you can now deploy it online in a service like Heroku. Guide to deploy here
- On Heroku, go to ‘Config vars’ section and add all the vars that we have on the .env file
Common problems
- If during initial install you see an error related to 'react-scrips' do: 'npm install react-scripts --save'
- If during initial install you see an error related to 'typescript' do: 'npm install typescript'
Commands
- 'npm run dev' to start both frontend and server
- 'npm run client' to start frontend only
- 'npm run server' to start server only
- 'heroku-postbuild' to deploy on Heroku