-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 4d9fdfc
Showing
3,062 changed files
with
544,438 additions
and
0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,121 @@ | ||
default_config: &default_config | ||
environment: | ||
SENTRY_ORG: shift-reset-llc | ||
SENTRY_PROJECT: actual | ||
YARN_CACHE_FOLDER: ~/.cache/yarn | ||
CSC_LINK: ~/windows-shift-reset-llc.p12 | ||
|
||
cached_files: &cached_files | ||
paths: | ||
- ~/.cache/yarn | ||
- node_modules | ||
- ./packages/desktop-electron/node_modules | ||
- ./packages/loot-core/node_modules | ||
- ./mobile/node_modules | ||
- ./import-ynab4/node_modules | ||
- ./api/node_modules | ||
- ./node-libofx/node_modules | ||
- ./loot-design/node_modules | ||
- ./desktop-client/node_modules | ||
key: v3-dependencies-{{ checksum "yarn.lock" }} | ||
|
||
version_tag_only: &version_tag_only | ||
filters: | ||
branches: | ||
ignore: /.*/ | ||
tags: | ||
only: /^\d+\.\d+\.\d+$/ | ||
|
||
version: 2.1 | ||
|
||
orbs: | ||
win: circleci/[email protected] | ||
|
||
jobs: | ||
test: | ||
<<: *default_config | ||
|
||
docker: | ||
- image: circleci/node:12.13 | ||
|
||
working_directory: ~/repo | ||
|
||
steps: | ||
- checkout | ||
|
||
- restore_cache: | ||
keys: | ||
- v3-dependencies-{{ checksum "yarn.lock" }} | ||
|
||
- run: yarn install --pure-lockfile | ||
|
||
- save_cache: | ||
<<: *cached_files | ||
|
||
- run: yarn test | ||
|
||
build_windows: | ||
<<: *default_config | ||
|
||
executor: | ||
name: win/default | ||
|
||
working_directory: ~/repo | ||
|
||
steps: | ||
- checkout | ||
|
||
- run: | ||
command: npm install -g @sentry/cli --unsafe-perm | ||
shell: bash | ||
|
||
- run: | ||
command: echo $WINDOWS_CERT | base64 --decode >> ${HOME}/windows-shift-reset-llc.p12 | ||
shell: bash | ||
|
||
- run: | ||
command: yarn install --pure-lockfile | ||
shell: bash | ||
|
||
- run: | ||
command: ./bin/package --release --version ${CIRCLE_TAG} | ||
shell: bash | ||
|
||
build_linux: | ||
<<: *default_config | ||
|
||
docker: | ||
- image: circleci/node:12.13 | ||
|
||
working_directory: ~/repo | ||
|
||
steps: | ||
- checkout | ||
|
||
- restore_cache: | ||
keys: | ||
- v3-dependencies-{{ checksum "yarn.lock" }} | ||
|
||
- run: yarn install --pure-lockfile | ||
|
||
- run: sudo npm install -g @sentry/cli --unsafe-perm | ||
|
||
- run: ./bin/package --release --version ${CIRCLE_TAG} | ||
|
||
workflows: | ||
version: 2 | ||
test: | ||
jobs: | ||
- test | ||
build_version: | ||
jobs: | ||
- test: | ||
<<: *version_tag_only | ||
- build_windows: | ||
<<: *version_tag_only | ||
requires: | ||
- test | ||
- build_linux: | ||
<<: *version_tag_only | ||
requires: | ||
- test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
yarn.lock text eol=lf |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
/data/* | ||
!data/.gitkeep | ||
/data2 | ||
packages/desktop-electron/client-build | ||
packages/desktop-electron/.electron-symbols | ||
packages/desktop-electron/dist | ||
packages/desktop-electron/loot-core | ||
node_modules | ||
.DS_Store | ||
lerna-debug.log | ||
Actual-* | ||
.#* | ||
**/xcuserdata/* | ||
.secret-tokens | ||
bundle.desktop.js | ||
bundle.desktop.js.map | ||
bundle.mobile.js | ||
bundle.mobile.js.map | ||
.sentryclirc | ||
export-2020-01-10.csv |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
|
||
This is the source code for [Actual](https://actualbudget.com), a local-first personal finance tool. It is 100% free and open-source. | ||
|
||
If you are only interested in running the latest version, you don't need this repo. You can get the latest version through npm. | ||
|
||
More docs are available in the [docs](XXX) folder. | ||
|
||
## Installation | ||
|
||
### The easy way: using a server (recommended) | ||
|
||
The easiest way to get Actual running is to use the [actual-sync](XXX) project. That is the server for syncing changes across devices, and it comes with the latest version of Actual. The server will provide both the web project and a server for syncing. | ||
|
||
``` | ||
git clone XXX | ||
cd actual-sync | ||
yarn install | ||
yarn start | ||
``` | ||
|
||
Navigate to https://localhost:5006 in your browser and you will see Actual. | ||
|
||
You should deploy the server somewhere so you can access your data from anywhere. See instructions on the [actual-sync](XXX) repo. | ||
|
||
### Without a server | ||
|
||
This will give you a fully local web app without a server. This npm package is the `packages/desktop-client` package in this repo built for production: | ||
|
||
``` | ||
yarn add @actual-app/web | ||
``` | ||
|
||
Now you need to serve the files in `node_modules/@actual-app/web/build`. One way to do it: | ||
|
||
``` | ||
cd node_modules/@actual-app/web/build | ||
npx http-server . | ||
``` | ||
|
||
Navigate to http://localhost:8080 and you should see Actual. | ||
|
||
## Building | ||
|
||
If you want to build the latest version, see [releasing.md](XXX). It provides instructions for building this code into the same artifacts that come from npm. | ||
|
||
## Run locally | ||
|
||
Both the electron and web app can started with a single command. When running in development, it will store data in a `data` directory in the root of the `actual` directory. | ||
|
||
First, make sure to run `yarn install` to install all dependencies. | ||
|
||
In the root of the project: | ||
|
||
``` | ||
yarn start # Run the electron app | ||
yarn start:browser # Run the web app | ||
``` | ||
|
||
## Code structure | ||
|
||
The app is split up into a few packages: | ||
|
||
* loot-core - The core application that runs on any platform | ||
* loot-design - The generic design components that make up the UI | ||
* desktop-client - The desktop UI | ||
* desktop-electron - The desktop app | ||
* mobile - The mobile app | ||
|
||
More docs are available in the [docs](XXX) folder. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
#!/bin/sh | ||
FILES=$(git diff --cached --name-only --diff-filter=ACMR "*.js" "*.jsx" | sed 's| |\\ |g') | ||
[ -z "$FILES" ] && exit 0 | ||
|
||
# Prettify all selected files | ||
echo "$FILES" | xargs ./node_modules/.bin/prettier --write | ||
|
||
# Add back the modified/prettified files to staging | ||
echo "$FILES" | xargs git add | ||
|
||
exit 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
#!/bin/sh -e | ||
|
||
ROOT=$(cd "`dirname $0`"; pwd) | ||
NPM_NAME="$1" | ||
NAME="$2" | ||
PACKAGE_DIR="`dirname "$ROOT"`/packages/$NAME" | ||
|
||
if [ -z "$NAME" ] || [ -z "$NPM_NAME" ]; then | ||
echo "Usage: `basename $0` <npm-name> <local-name>" | ||
exit 1 | ||
fi | ||
|
||
if [ -d "$PACKAGE_DIR" ]; then | ||
read -p "Package exists, remove $PACKAGE_DIR? [y/N] " -r | ||
if [ -z "$REPLY" ] || [ "$REPLY" != "y" ]; then | ||
exit 2 | ||
fi | ||
fi | ||
|
||
rm -rf "$PACKAGE_DIR" | ||
URL="`npm view "$NPM_NAME" dist.tarball`" | ||
TMPDIR="`mktemp -d`" | ||
|
||
cd "$TMPDIR" | ||
wget -O tar.tgz "$URL" | ||
tar xvzf tar.tgz | ||
mv package "$PACKAGE_DIR" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
#!/bin/bash -e | ||
|
||
VERSION="" | ||
|
||
POSITIONAL=() | ||
while [[ $# -gt 0 ]]; do | ||
key="$1" | ||
|
||
case $key in | ||
--version) | ||
VERSION="$2" | ||
shift | ||
shift | ||
;; | ||
*) | ||
POSITIONAL+=("$1") | ||
shift | ||
;; | ||
esac | ||
done | ||
set -- "${POSITIONAL[@]}" | ||
|
||
NOTES="$@" | ||
|
||
if [ -z "$VERSION" ]; then | ||
echo "--version is required"; | ||
exit 1 | ||
fi | ||
|
||
echo "Version: $VERSION" | ||
echo "Notes: $NOTES" | ||
read -p "Make release? [y/N] " -r | ||
if [ -z "$REPLY" ] || [ "$REPLY" != "y" ]; then | ||
exit 2 | ||
fi | ||
|
||
source ./.secret-tokens | ||
|
||
# Tag and push to make windows and linux versions | ||
git push origin master | ||
git tag -a "$VERSION" -m "$NOTES" | ||
git push origin "$VERSION" | ||
|
||
# Make a macOS version | ||
./bin/package --release --version "$VERSION" | ||
|
||
# TODO: browser version | ||
|
||
# Finally, update github issues | ||
curl -X POST -H "x-release-token: $RELEASE_TOKEN" https://actual-automoto.fly.dev/release/"$VERSION" |
Oops, something went wrong.