Skip to content

A custom Spring Initializr for Tapsi Box, providing our internal libraries, build conventions, and project templates.

License

Notifications You must be signed in to change notification settings

tapsi-box/nova

 
 

Repository files navigation

Nova: The Tapsi Box Spring Initializr

Welcome to Nova, the official Tapsi Box instance of the Spring Initializr.

Inspired by the Latin word for "new"—referencing a new star that suddenly shines with brilliance—Nova is designed to be a powerful, fresh presence in our development workflow. Its purpose is to bootstrap new projects with a burst of efficiency, ensuring they are standardized and ready for development from the very beginning.

This repository configures a customized Spring Initializr instance that is pre-loaded with Tapsi Box’s unique development standards, including:

  • Custom Dependencies: All Tapsi Box-specific libraries and shared modules, sourced directly from our private Artifactory.

  • Architectural Templates: Opinionated project structures that align with Tapsi Box’s architectural best practices.

  • Static Configuration: Boilerplate configuration files and settings commonly used across our services.

This instance is a fork of the official start.spring.io repository. The following modules from the original project are used:

  • start-client: client-side assets

  • start-site: server infrastructure and metadata configuration

  • start-site-verification: tests to verify the validity of the metadata

Using

There is a dedicated page that describes how you can interact with the service.

Important
To build projects generated by Nova, you must provide your credentials for the Tapsi Box Artifactory. Update the gradle.properties file in your Gradle home directory (~/.gradle/gradle.properties) with the following properties:
# Tapsi Artifactory Credentials
# Provide your username and password for Tapsi's private repository.
tapsiArtifactoryUsername=YOUR_USERNAME
tapsiArtifactoryPassword=YOUR_PASSWORD

Building from Source

To build and run this project locally, you will need Java 17 and a bash-like shell.

Building

Invoke the build at the root of the project:

$ ./mvnw clean install

The project also includes a number of longer-running verification tests. They can be built and run using the verification profile:

$ ./mvnw -Pverification clean install

The project’s other tests are not included in the verification profile. All of the project’s tests can be run using the full profile:

$ ./mvnw -Pfull clean install

If building start-client fails, you may have an outdated cache that can be deleted as follows:

$ cd start-client
$ rm -rf .cache node_modules

Running the app locally

As long as you’ve built the project beforehand (in particular start-client), you can easily start the app as any other Spring Boot app:

$ cd start-site
$ ../mvnw spring-boot:run

Running the app in an IDE

You should be able to import the project into your IDE with no problems. Once there you can run the StartApplication from its main method and debug it.

This is the recommended way to operate while you are developing the application.

Authors

License

The original start.spring.io website and this derivative work are Open Source software released under the Apache 2.0 license.


Made with ❤️ by the Tapsi team

About

A custom Spring Initializr for Tapsi Box, providing our internal libraries, build conventions, and project templates.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 76.0%
  • JavaScript 16.9%
  • SCSS 5.6%
  • HTML 0.5%
  • Mustache 0.5%
  • Python 0.4%
  • Shell 0.1%