A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

The Farmer Journal

A farm management software for the hobbyist and smallholder farmer.
https://github.com/usetania/tania-core

Category: Consumption
Sub Category: Agriculture and Nutrition

Keywords

ddd-architecture end-user farm farm-management farming go golang nextjs reactjs tania

Keywords from Contributors

transformer measuring stress-test archiving animal tokenizer generic conversion observation reporting

Last synced: about 10 hours ago
JSON representation

Repository metadata

Tania is a farm management software for the hobbyist and smallholder farmer.

README.md

Warning

This is the development branch of Tania. Changes can occur nightly. If you need the stable branch you can checkout the master branch.

Roadmap

You can check the roadmap in Tania's GitHub project.


Tania is a free and open source farm management software. You can manage your farm areas, farm reservoirs, farm tasks, inventories, and the crop growing progress. It is designed for any type of farms.

Download Tania for Windows x64 and Linux x64 on the release page.

Screenshot

Getting Started

This software is built with Go programming language. It means you will get an executable binary to run on your machine. You don't need extra software like MAMP, XAMPP, or WAMP to run Tania, but you may need MySQL database if you choose to use it instead of SQLite (the default database.)

If your OS is not listed on our releases page, you have to build Tania for your OS by yourself. You can follow our instructions to build Tania.

Prerequisites

Building Instructions

THIS DOCUMENTATION WILL BE UPDATED LATER

We are in the progress of building the new frontend application.

Database Engine

Tania uses SQLite as the default database engine. You may use MySQL as your database engine by replacing sqlite with mysql at tania_persistence_engine field in your backend/conf.json.

{
  "app_port": "8080",
  "tania_persistence_engine": "sqlite",
  "demo_mode": true,
  "upload_path_area": "uploads/areas",
  "upload_path_crop": "uploads/crops",
  "sqlite_path": "db/sqlite/tania.db",
  "mysql_host": "127.0.0.1",
  "mysql_port": "3306",
  "mysql_dbname": "tania",
  "mysql_user": "root",
  "mysql_password": "root",
  "redirect_uri": [
      "http://localhost:8080",
      "http://127.0.0.1:8080"
  ],
  "client_id": "f0ece679-3f53-463e-b624-73e83049d6ac"
}

Run The Test

Use go test ./... inside the backend folder to run all the Go tests.

REST APIs

Tania have REST APIs to easily integrate with any softwares, even you can build a mobile app client for it. You can import the JSON file inside Postman directory to Postman app.

Contributing to Tania

We welcome contributions, but request you to follow these guidelines.

Localisation

You can help us to localise Tania into your language by following these steps:

  1. Copy frontend/languages/template.pot and paste it to frontend/languages/locale directory.
  2. Rename it with your language locale code e.g: en_AU.po, de_DE.po, etc.
  3. Fill msgstr key with your translation. You can edit the .po file by using text editor or PO Edit software.
  4. Pull request your translation to the master branch.

Build Tania localisation by yourself

THIS DOCUMENTATION WILL BE UPDATED LATER

We are in the progress of building the new frontend application.

Then follow the instruction to build Tania.

Support Us

We will move from OpenCollective to GitHub sponsorship. Thank you for all your donation in OpenCollective.

Contributors

This project exists thanks to all the people who contribute.

Backers

Copyright and License

Copyright to Tania and other contributors under Apache 2.0 open source license.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 7 days ago

Total Commits: 1,134
Total Committers: 20
Avg Commits per committer: 56.7
Development Distribution Score (DDS): 0.597

Commits in past year: 1
Committers in past year: 1
Avg Commits per committer in past year: 1.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
Adhatama a****a@g****m 457
Kerwin Jorbina k****a@g****m 238
Geraldine Granada g****a@g****m 106
Asep Bagja Priandana b****z@g****m 101
Pablo Jiménez Pascual p****o@j****e 52
dependabot[bot] 4****] 48
Purwandi f****0@g****m 45
Yasin Junet y****e@g****m 24
retnoika s****a@g****m 24
Didiet Noor l****a@g****m 23
Sucipto c****p@p****m 5
harkce h****t@g****m 2
kosnick k****x@g****m 2
Dzung Do d****o@o****n 1
Jhonatas Mendes 5****s 1
Joko Susilo s****8@g****m 1
deepsource-autofix[bot] 6****] 1
joelschutz 4****z 1
trendspotter t****r 1
wotnak 5****k 1

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 15
Total pull requests: 98
Average time to close issues: 13 days
Average time to close pull requests: 8 days
Total issue authors: 8
Total pull request authors: 4
Average comments per issue: 1.6
Average comments per pull request: 0.62
Merged pull request: 29
Bot issues: 0
Bot pull requests: 95

Past year issues: 5
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 2
Past year pull request authors: 0
Past year average comments per issue: 0.6
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/usetania/tania-core

Top Issue Authors

  • rmsonge (4)
  • 26Jon (3)
  • mmafrar (2)
  • bepitulaz (2)
  • poVoq (1)
  • jhonatas-mendes (1)
  • pimar57 (1)
  • dvn0 (1)

Top Pull Request Authors

  • dependabot[bot] (95)
  • saosangmo (1)
  • bepitulaz (1)
  • pablojimpas (1)

Top Issue Labels

  • improvement (1)
  • good first issue (1)
  • enhancement (1)
  • ideas (1)

Top Pull Request Labels

  • dependencies (95)
  • javascript (76)
  • go (16)
  • github_actions (3)
  • enhancement (1)

Dependencies

backend/go.mod go
  • github.com/asaskevich/EventBus v0.0.0-20200907212545-49d423059eef
  • github.com/fsnotify/fsnotify v1.5.1
  • github.com/go-sql-driver/mysql v1.6.0
  • github.com/gofrs/uuid v4.0.0+incompatible
  • github.com/labstack/echo/v4 v4.5.0
  • github.com/labstack/gommon v0.3.0
  • github.com/mattn/go-colorable v0.1.8
  • github.com/mattn/go-isatty v0.0.13
  • github.com/mattn/go-sqlite3 v1.14.8
  • github.com/mitchellh/mapstructure v1.4.1
  • github.com/pariz/gountries v0.0.0-20200430155801-1c6a393df9c7
  • github.com/sasha-s/go-deadlock v0.3.1
  • github.com/sirupsen/logrus v1.8.1
  • github.com/spf13/cast v1.4.1
  • github.com/spf13/pflag v1.0.5
  • github.com/spf13/viper v1.8.1
  • github.com/stretchr/objx v0.3.0
  • github.com/stretchr/testify v1.7.0
  • golang.org/x/crypto v0.0.0-20210817164053-32db794688a5
  • golang.org/x/net v0.0.0-20210825183410-e898025ed96a
  • golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf
  • golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b
  • golang.org/x/text v0.3.7
  • golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac
  • gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c
backend/go.sum go
  • 600 dependencies
frontend/package-lock.json npm
  • 287 dependencies
frontend/package.json npm
  • @types/node ^17.0.19 development
  • @types/react 17.0.19 development
  • eslint 7.32.0 development
  • eslint-config-next 11.1.2 development
  • typescript 4.4.2 development
  • @fortawesome/fontawesome-svg-core ^1.2.36
  • bootstrap ^5.1.0
  • next ^12.1.0
  • react ^17.0.2
  • react-bootstrap ^2.0.0-beta.6
  • react-dom ^17.0.2
  • react-icons ^4.2.0
  • sass ^1.39.0
.github/workflows/codeql-analysis.yml actions
  • actions/checkout v3 composite
  • github/codeql-action/analyze v2 composite
  • github/codeql-action/autobuild v2 composite
  • github/codeql-action/init v2 composite
.github/workflows/golangci-lint.yml actions
  • actions/checkout v3 composite
  • golangci/golangci-lint-action v3 composite

Score: 9.702594610156737