Go to file
rubenwardy 025310913a Fix sentry sourcemaps 2022-07-23 01:27:46 +01:00
docs Update widget_api.md 2021-09-15 23:19:03 +01:00
src Release 1.15.4 2022-07-18 10:13:02 +01:00
tests Add BookmarksTopBar option 2022-04-17 20:55:44 +01:00
utils Exit release script if there are uncommited changes 2022-07-15 18:37:42 +01:00
.editorconfig Refactor background system 2021-08-30 16:49:54 +01:00
.eslintrc.js Add react-hooks to eslint, fix issues 2022-04-10 18:02:56 +01:00
.gitignore Add manifest translations 2022-04-08 23:12:05 +01:00
.gitlab-ci.yml Fix sentry sourcemaps 2022-07-23 01:27:46 +01:00
LICENSE.md Change license to GPLv3+ 2021-03-08 01:46:27 +00:00
README.md Switch to AccuWeather 2021-10-24 15:20:27 +01:00
config.example.json Switch to AccuWeather 2021-10-24 15:20:27 +01:00
package-lock.json Release 1.15.4 2022-07-18 10:13:02 +01:00
package.json Release 1.15.4 2022-07-18 10:13:02 +01:00
tsconfig.app.json Use Babel instead of ts-loader 2022-02-27 03:37:56 +00:00
tsconfig.json Add WidgetManager tests 2021-06-05 16:53:42 +01:00
tsconfig.server.json Add WidgetManager tests 2021-06-05 16:53:42 +01:00
webpack.config.js Only show BookmarksBar on Chrome 2022-04-23 17:32:44 +01:00

README.md

Renewed Tab

pipeline status website

A clean web browser "New Tab" / "Home page" page, created using TypeScript and React.

License: GPLv3 or later.

Usage

Introduction

Renewed Tab has 3 components:

  • A web app, found at src/app. This is written using React, and uses some browser extension APIs when available.
  • An API/proxy server, found at src/server. This provides various APIs, and allows requests to be proxied to get around CORS. You can also use the production server if you're not changing any APIs.
  • A webext, found at src/webext. This contains the manifest.json, and will wrap the web app when compiled.

Configure

Copy config.example.json to config.json.

(Optional) If you want to run a local API/proxy server, then you will need to:

  • Change API_URL and PROXY_URL in config.json to localhost:

    {
    	"API_URL": "http://localhost:8000/api/",
    	"PROXY_URL": "http://localhost:8000/proxy/",
    
    	/* other settings here */
    }
    
  • Configure some API keys if you want to use third-party services. These are optional, but will prevent some features from working.

    • The settings:
      • ACCUWEATHER_API_KEY: AccuWeather.com
      • UNSPLASH_ACCESS_KEY: Unsplash
    • You can set the above server settings in config.json, or using environment variables (recommended for production).
  • You can also change other server settings in config.json:

    • PROXY_ALLOWED_HOSTS: Array of allowed host names.

Debug

Make sure to run npm install.

  • Web + server: npm start
  • Web only: npm run start:app
  • Web extension
    • Firefox: npm run start:firefox
    • Chrome: npm run start:chrome

Production

Make sure to run npm install, and to set the NODE_ENV environment variable to production.

  • Web + server: npm run build
  • Web only: npm run build:app
  • Web extension: npm run package:webext

Also see .gitlab-ci.yml.

More documentation

See the docs folder.