Skip to content
This repository was archived by the owner on Jun 6, 2025. It is now read-only.

Commit 371418f

Browse files
committed
Lots of niceities for packaging
1 parent 3d86eea commit 371418f

File tree

13 files changed

+287
-115
lines changed

13 files changed

+287
-115
lines changed

CONTRIBUTING.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Contributing to Chronicler
2+
3+
First off, thank you for considering contributing to Chronicler! Chronciler is a small personal project made to fill a specific need for myself, and I'm happy to see that you are interested using it to help your own use case as well.
4+
5+
This document provides some guidelines to ensure that bug reports, pull requests, and other contributions flow smoothly. By following these guidelines, you are signalling to me that you respect my time and energy, and I will reciprocate by showing you the same respect when working with you.
6+
7+
### Project goals
8+
9+
Contributions are most appreciated when they are in line with the project's goals. The goals of Chronicler are, in order:
10+
11+
1. **Chronicler is reliable.** Chronicler must never suffer from data loss. This priority comes before all others in this list.
12+
2. **Chronicler is easy to use.** All of Chronicler's features should be usable without requiring a manual, and ideally without any training at all.
13+
3. **Chronicler is fast.** Chronicler should be as fast as possible, but this shouldn't get in the way of reliability or ease of use.
14+
4. **Chronicler is the ideal tool for personal web archiving.** New features that make Chronicler better for this task are welcomed while features that do not are encouraged to be built as separate software that interoperates with Chronicler.
15+
16+
### How to contribute
17+
18+
Chronicler is very young and there are many ways where it can be improved. In general, contributions that work towards the goals of the project are always welcomed. Some ways that you can help contribute include:
19+
20+
- **Asking for help with a Chronicler issue.** If you can't get a feature to work as expected, then Chronicler isn't being easy to use. Sharing your experience may help resolve the issue, and may help others in the future as well.
21+
- **Explaining your use case and why Chronicler failed you.** Did the program crash? Is there a feature that doesn't work on a particular site? Sharing your experience with the community can help make the software better. I can't promise I'll be able to implement every feature request, though.
22+
- **Making a pull request.** Changes that advance the goals of the project are welcomed!
23+
24+
### Code of conduct
25+
26+
- Be civil. Don't say things you wouldn't say face-to-face. Don't be snarky. Comments should get more civil and substantive, not less, as a topic gets more divisive.
27+
- When disagreeing, please reply to the argument instead of calling names. "That is idiotic; 1 + 1 is 2, not 3" can be shortened to "1 + 1 is 2, not 3."
28+
- Please respond to the strongest plausible interpretation of what someone says, not a weaker one that's easier to criticize. Assume good faith.
29+
- Be Open, Considerate, and Respectful as described in the [Python Community Code of Conduct](https://www.python.org/psf/codeofconduct/).
30+
- This project abides by the [Contributor Covenant](https://www.contributor-covenant.org/version/1/4/code-of-conduct).
31+
32+
## Running Chronicler from source
33+
34+
### Development Scripts
35+
36+
```bash
37+
# run application in development mode
38+
yarn dev
39+
40+
# compile source code and create webpack output
41+
yarn compile
42+
43+
# `yarn compile` & create build with electron-builder
44+
yarn dist
45+
46+
# `yarn compile` & create unpacked build with electron-builder
47+
yarn dist:dir
48+
```
49+
50+
### Useful links
51+
52+
- http://vcap.me/ - this domain always resolves to 127.0.0.1. I use it as a guaranteed offline domain.
53+
- http://httpstat.us/ - useful for testing different HTTP status codes.
54+
- https://badssl.com/ - useful for testing different SSL error conditions.

README.md

Lines changed: 11 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,20 @@
1-
# electron-webpack-quick-start
2-
> A bare minimum project structure to get started developing with [`electron-webpack`](https://github.com/electron-userland/electron-webpack).
1+
# Chronicler
2+
Chronicler is an offline-first web browser. Chronicler works as your own personal:
33

4-
Thanks to the power of `electron-webpack` this template comes packed with...
4+
- Web archiver, snapshotting pages exactly as you remember them.
5+
- Search engine, providing full-text search of all pages you visit.
6+
- Web crawler, automatically downloading entire sites to be browsed later.
57

6-
* Use of [`webpack-dev-server`](https://github.com/webpack/webpack-dev-server) for development
7-
* HMR for both `renderer` and `main` processes
8-
* Use of [`babel-preset-env`](https://github.com/babel/babel-preset-env) that is automatically configured based on your `electron` version
9-
* Use of [`electron-builder`](https://github.com/electron-userland/electron-builder) to package and build a distributable electron application
8+
**📺 Click to watch a brief video showing Chronicler's features:**
109

11-
Make sure to check out [`electron-webpack`'s documentation](https://webpack.electron.build/) for more details.
10+
[![Introduction to Chronicler video](https://img.youtube.com/vi/MxEqFmjsZFw/maxresdefault.jpg)](https://youtu.be/MxEqFmjsZFw)
1211

1312
## Getting Started
14-
Simply clone down this reposity, install dependencies, and get started on your application.
13+
Download the latest version from the [releases page](https://github.com/CGamesPlay/chronicler/releases).
1514

16-
The use of the [yarn](https://yarnpkg.com/) package manager is **strongly** recommended, as opposed to using `npm`.
15+
**⚠️ Warning:** Chronicler is stable but very early in development. Many features you might expect from a web browser have not yet been implemented. Your feedback is welcomed!
1716

18-
```bash
19-
# create a directory of your choice, and copy template using curl
20-
mkdir new-electron-webpack-project && cd new-electron-webpack-project
21-
curl -fsSL https://github.com/electron-userland/electron-webpack-quick-start/archive/master.tar.gz | tar -xz --strip-components 1
17+
### Contributing
2218

23-
# or copy template using git clone
24-
git clone https://github.com/electron-userland/electron-webpack-quick-start.git
25-
cd electron-webpack-quick-start
26-
rm -rf .git
19+
Thanks for your interest in contributing! 🙌 There are many ways to contribute to Chronicler. Get started [here](CONTRIBUTING.md).
2720

28-
# install dependencies
29-
yarn
30-
```
31-
32-
### Development Scripts
33-
34-
```bash
35-
# run application in development mode
36-
yarn dev
37-
38-
# compile source code and create webpack output
39-
yarn compile
40-
41-
# `yarn compile` & create build with electron-builder
42-
yarn dist
43-
44-
# `yarn compile` & create unpacked build with electron-builder
45-
yarn dist:dir
46-
```
47-
48-
### Useful links
49-
50-
- http://vcap.me/
51-
- https://cgi-lib.berkeley.edu/ex/fup.html
52-
- https://httpbin.org/
53-
- http://httpstat.us/
54-
- https://badssl.com/

package.json

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,26 @@
11
{
2-
"name": "electron-webpack-quick-start",
3-
"version": "0.0.0",
2+
"name": "chronicler",
3+
"description": "An offline-first web browser",
4+
"version": "1.0.0",
5+
"author": {
6+
"name": "Ryan Patterson",
7+
"email": "[email protected]"
8+
},
49
"license": "MIT",
510
"scripts": {
611
"dev": "electron-webpack dev",
712
"compile": "electron-webpack",
813
"dist": "yarn compile && electron-builder",
914
"dist:dir": "yarn dist --dir -c.compression=store -c.mac.identity=null"
1015
},
16+
"build": {
17+
"appId": "com.cgamesplay.chronicler",
18+
"productName": "Chronicler",
19+
"copyright": "Copyright 2018 Ryan Patterson",
20+
"mac": {
21+
"category": "public.app-category.reference"
22+
}
23+
},
1124
"electronWebpack": {
1225
"renderer": {
1326
"webpackConfig": "renderer.webpack.config.js"

src/common/config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
// @flow
22

3-
export const appName = "DocBrowser";
3+
export const appName = "Chronicler";

src/common/urls.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ export const contentRoot = isDevelopment
1212
: "app://main/html";
1313
export const contentUrl = (path: string) => contentRoot + path;
1414

15+
export const welcomeUrl = "/welcome";
1516
export const allPagesUrl = "/all-pages";
1617
export const searchUrl = (query?: string) =>
1718
query ? `/search?q=${encodeURIComponent(query)}` : "/search";

0 commit comments

Comments
 (0)