# Best Practices

The tables below shows the list of Best Practices provided by Codesoju

| Collaborate                                                         | Description                                                            | Tool |
| ------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---- |
| Project Management                                                  | Define an agile project suited for Enterprise App development          |      |
| Source Control                                                      | How to manage a code source repository                                 |      |
| Communication                                                       | Instant Collaboration & team collaboration                             |      |
| [**Coding Style**](https://cedrus.gitbook.io/codesoju/coding-style) | Coding Style and naming conventions for both JavaScript and TypeScript |      |
| UX Specifications                                                   | Define User Experience and build specifications                        |      |
| Wireframing                                                         | Build wireframes for Enterprise apps                                   |      |
| Prototyping                                                         | Prototype and bootstrap development                                    |      |
| Issues Management                                                   | Manage bugs and issues related to apps                                 |      |
| Knowledge base                                                      | Build an incremental knowledge base                                    |      |

| Develop                                                                                                                                           | Description                                                                 | Tool |
| ------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ---- |
| [**Task Automation Manager**](https://cedrus.gitbook.io/codesoju/task_automation_manager)                                                         | Which Task Automation Manager to choose & how to implement it               | Yes  |
| [**Application Scaffolding**](https://github.com/cedrus/codesoju/tree/3b7451a696df0e5de4e0533d53ff5f9bd03a6de6/application_scaffolding/README.md) | Create the scaffold of an Enterprise App                                    | Yes  |
| Application Routing                                                                                                                               | Define Application Navigation & Routing                                     |      |
| [**Authentication**](https://cedrus.gitbook.io/codesoju/auth0)                                                                                    | What to use for the authentication and how to proceed to the implementation | Yes  |
| Templating                                                                                                                                        | Build UI based on templates                                                 |      |
| Theming                                                                                                                                           | Provide a multi-themes application                                          |      |
| Responsive Layout                                                                                                                                 | Develop responsive application with different layout options                |      |
| API consumption                                                                                                                                   | Consume API securely and efficiently                                        |      |
| Micro-Services Development Model                                                                                                                  | Develop APIs following the Micro-Service model                              |      |
| Form & Form Validation                                                                                                                            | Manage complex forms and form validations in an Enterprise context          |      |
| Work with Datatables                                                                                                                              | Implement sophisticated Datatables                                          |      |
| [**Implement Charts**](https://cedrus.gitbook.io/codesoju/charts)                                                                                 | Add interactive and responsive charts                                       | Yes  |
| Internationalization                                                                                                                              | Add multi-lingual support in apps                                           |      |
| [**Feature Toggle**](https://cedrus.gitbook.io/codesoju/feature_toggle)                                                                           | Toggle features of applications to isolate tests and functional validations |      |
| Unit Testing                                                                                                                                      | Implement unit test for a better code quality                               |      |
| Debugging                                                                                                                                         | Debug an application on both client and server side                         |      |
| [**Content Management System**](https://cedrus.gitbook.io/codesoju/content_management_system)                                                     | Configure and integrate a CMS                                               | Yes  |
| [**Data Cache**](https://cedrus.gitbook.io/codesoju/data_cache)                                                                                   | Implement a data cache for the content                                      |      |
| [**Native mobile**](https://github.com/cedrus/codesoju/tree/3b7451a696df0e5de4e0533d53ff5f9bd03a6de6/native_mobile/README.md)                     | Add a Native Mobile option                                                  | Yes  |

| Deploy                                                                            | Description                                                            | Tool |
| --------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---- |
| End-to-End Testing                                                                | Implement and automate End-to-End testing                              |      |
| Load Balancing                                                                    | Deploy apps to serve a large audience                                  |      |
| Performance Testing                                                               | Stress Testing of an Enterprise application and performance analysis   |      |
| [**Managing buildpacks**](https://cedrus.gitbook.io/codesoju/managing-buildpacks) | Build & Deploy an Enterprise application in the cloud using buildpacks | Yes  |
| Application Monitoring                                                            | Analize Logs and live monitoring                                       |      |
| [**Bluemix Deployment**](https://cedrus.gitbook.io/codesoju/bluemix-deployment)   | How to deploy an app on the IBM Bluemix platform                       |      |
