Skip to content

Apache Fineract CN template for creating new services. Contains best practices examples and documentation

License

Notifications You must be signed in to change notification settings

Izakey/fineract-cn-template

 
 

Repository files navigation

Apache Fineract CN Template

This project provides a template layout for all Apache Fineract CN services.

Abstract

Apache Fineract CN is an application framework for digital financial services, a system to support nationwide and cross-national financial transactions and help to level and speed the creation of an inclusive, interconnected digital economy for every nation in the world.

Steps needed to turn the template project into a real project

  1. Git clone template into {project name} folder

    git clone https://github.com/apache/fineract-cn-template.git {project name}
    
  2. Delete .git

    rm -rf .git
    
  3. Open settings.gradle and replace value of rootProject.name with {project name}

  4. Open root build.gradle and replace value of version with 0.1.0-snapshot

  5. Create Gradle wrapper

    gradle wrapper
    
  6. Open all module specific build.gradle files (api, service, and component-test) and replace value of group with org.apache.fineract.cn.{project name}

  7. Import project into IDE

  8. Rename all org.apache.fineract.cn.template packages to org.apache.fineract.cn.{project name}

  9. Open SampleRestConfiguration and SampleServiceConfiguration, adjust @ComponentScan to reflect the new package name

  10. Open application.yml and replace server.contextPath with /{project name}/v1/*

  11. Open bootstrap.yml and replace spring.application.name with {project name}/v1/

  12. Open SampleTest and replace constructor argument of TestEnvironment in line 80 with {project name}/v1/

  13. Run SampleTest

  14. Replace the contents of the README with text describing your new project.

  15. Happy coding! ; o)

Versioning

The version numbers follow the Semantic Versioning scheme.

In addition to MAJOR.MINOR.PATCH the following postfixes are used to indicate the development state.

  • BUILD-SNAPSHOT - A release currently in development.
  • M - A milestone release include specific sets of functions and are released as soon as the functionality is complete.
  • RC - A release candidate is a version with potential to be a final product, considered code complete.
  • RELEASE - General availability indicates that this release is the best available version and is recommended for all usage.

The versioning layout is {MAJOR}.{MINOR}.{PATCH}-{INDICATOR}[.{PATCH}]. Only milestones and release candidates can have patch versions. Some examples:

1.2.3.BUILD-SNAPSHOT
1.3.5.M.1
1.5.7.RC.2
2.0.0.RELEASE

License

See LICENSE file.

About

Apache Fineract CN template for creating new services. Contains best practices examples and documentation

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%