Giter Site home page Giter Site logo

About

DcaPal is a pragmatic Dollar Cost Averaging tool for passive investors like me: financially-educated people managing their own portfolios of not-too-many assets replicating major world indices.

I was facing a common problem: it's that time of the month, got some savings to invest and have to split them across my portfolio assets. How the heck can I do it so that my portfolio stays balanced?

Hence DcaPal. You come here every week/month/quarter, build your portfolio, define asset allocation in percentage, input how much you want to invest and let the algorithm do the splitting for you.

Getting started

You can start using DcaPal right away. It's free. No registration required.

Build your own portfolio or, if you don't know where to start, explore our Demo portfolios:

Build Instructions

DcaPal does not store any user data. But if you are still concerned for your privacy, you can build and run it on your machine.

Start Docker environment

cd dcapal-backend
docker compose -f docker-compose.yml -f docker/docker-compose.dev.yml up -d

(Note: if you're using a Mac with an ARM processor, you should replace (in the docker-compose dev file) Cadvisor's image version with gcr.io/cadvisor/cadvisor:v0.47.1 and set platform: linux/aarch64)

Run DcaPal backend

Prepare dcapal.yml config file

cd dcapal-backend
cp config/dcapal/dcapal.yml dcapal.yml

Compile and start backend service

cargo run --release

Run DcaPal frontend

Build DcaPal Optimizer

cd dcapal-optimizer-wasm
curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
wasm-pack build --release

Install NPM dependencies. Note: this is installing dcapal-optimizer-wasm package as well.

cd ../dcapal-frontend
npm install # Install dcapal-optimizer-wasm pkg as well

Run frontend server

npm run start

Architecture

flowchart LR
    Frontend[Frontend] ---|"/api/external/search?q={query}<br>/api/external/chart/${symbol}"|nginx[nginx]
    subgraph dcapal.com
        nginx---TradFiProvider[TradFi Provider]
        nginx---Backend[Backend]
        Backend---CryptoProvider[Crypto Provider REST API]
        Backend---|"/assets/fiat<br>/assets/crypto<br>/price/{base}?quote={quote}"|Redis[Redis]
    end
Loading

Contributing

Contributions and suggestions about how to improve this project are welcome! Please follow our contribution guidelines.

Thanks to all Contributors ❤️

Born as a personal Sunday morning project, DcaPal would have never grown so much without the help of heros willing to contribute with their time and work. Thank you very much ya all!

DcaPal Team's Projects

dcapal icon dcapal

DcaPal is a free, no registration, online tool to help you keep your portfolio balanced with dollar cost averaging investments

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.