tania-core

command module
v0.0.0-...-ae75a06 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 10, 2022 License: Apache-2.0 Imports: 26 Imported by: 0

README

Tania The Farmer Journal

The Farmer Journal

telegram semver Build Status License

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

Table of Contents

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
  1. Clone the repo using git clone https://github.com/Tanibox/tania-core.git
  2. Checkout the current stable version by using git checkout tags/1.7.2 -b v1.7.2
  3. From the project root, call go get to install the Go dependencies.
  4. Create a new file conf.json using the values from the conf.json.example and set it with your own values.
  5. Issue npm install to install Vue.js dependencies.
  6. To build the Vue.js, just run npm run dev for development purpose or npm run prod for production purpose.
  7. Compile the source code with go build. It will produces tania-core.exe (on Windows) or tania-core (on Linux and OSX.)
  8. Run the program from Terminal by issuing ./tania-core, or from Windows Command Prompt by issuing .\tania-core.exe.
  9. The default username and password are tania / tania.
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 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 ./... to run all the Go tests.
  • Use npm run cypress:run to run the end-to-end test
Run Tania Core On Portainer
version: '2.2'

services:
  app:
    image: tanibox/tania:latest
    environment:
      SYMFONY_LOCALE: en
      SYMFONY_SECRET: AugIVKlefKLzqJwlwY5S5YaW8Ui66fi8
      SYMFONY_ENV: dev
      SYMFONY_DB_HOST: db
      SYMFONY_DB_PORT: 3306
      SYMFONY_DB_NAME: tania
      SYMFONY_DB_USERNAME: tania
      SYMFONY_DB_PASSWORD: <Password>
      SYMFONY_MAILER_TRANSPORT: smtp
      SYMFONY_MAILER_HOST: 127.0.0.1
      SYMFONY_MAILER_USERNAME: admin
      SYMFONY_MAILER_PASSWORD: <Password>
      SYMFONY_MAILER_FROM_ADDRESS: <your_e-mail>
      SYMFONY_MAILER_SENDER_NAME: <User_Name>
      COMPOSER_ALLOW_SUPERUSER: 1
    ports:
      - 80:80
  db:
    image: mysql:5.6
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: tania
      MYSQL_USER: tania
      MYSQL_PASSWORD: <Password>
    ports:
      - 3306:3306

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.

Roadmap

We want to share our high-level details of our roadmap, so that others can see our priorities in Tania development. You can read our roadmap on the wiki.

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 languages/template.pot and paste it to 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

Note: You will need to install GNU Gettext for your OS. Get it here.

You can build Tania in your language by changing the default language inside resources/js/app.js.

Vue.use(GetTextPlugin, {
  availableLanguages: { // add your language here
    en_GB: 'British English',
    id_ID: 'Bahasa Indonesia',
    hu_HU: 'Magyar Nyelv'
  },
  defaultLanguage: 'en_GB', // change this to your language
  translations: translations,
  silent: false
})

Then follow the instruction to build Tania.

Support Us

You can become a backer or a sponsor for Tania through our Open Collective page.

You can also support Tania development by buying the merchandise from Tania Swag Store.

Contributors

This project exists thanks to all the people who contribute.

Backers

Become a backer with a monthly donation and help us continue our activities. backersbackers

Sponsors

Become a sponsor and get your logo on our README on GitHub with a link to your site. backers

Authors

Tania is a project of Tanibox.

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

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL