OneLine is a multiplatform, standardized, redefined framework.
Botoneline is a bot that analyzes databases design and setups a generic multiplatform solution for you.
Yes, it's possible!
I have been developing this robot since 2013.
This robot resolve common patterns and some general patterns as well.
Botoneline is being teached more everyday.
I have developed 35+ applications with it.
- Service Arquitecture (Dependency Injection & Inversion of Control)
- HttpClient's
- DbContext
- Smtp
- BlobStorage
- Repositories
- Authorization
- Authentication
- SignalR client and server hub context
- Resource manager localizer client and server
- Localized label, text and messages
- AuditTrails
- System exception logs
- Componentization
- Single Page Application Arquitecture
- RESTful API
- Standardized
- Eventable
- Listenable
- RAD (Rapid Application Development) and Prototyping
- WORE (Write once, run everywhere)
- Multi platform deployment support (Thanks to MAUI)
- Web Api
- Blazor Server
- Android
- iOS
- Windows Desktop and WPF
- MacOS Desktop
- Tizen
- Blazor WAsm (Under Development)
- Linux (Planning TBA)
- Database Providers Supported Over Entity Framework Core
- SQL Server 2012 onwards
- SQLite 3.7 onwards
- PostgreSQL
- MySQL
- MariaDB
- Oracle DB 11.2 onwards
Any other database engines can be supported as requested per need.
- Users account management
- Localized Emails Templates
- Authorization and authentication management using JWT
- Default security pre implemented (Admin only)
- Fully claims based security pre implemented
- Interfaces, models, view models and search criteria model implementations
- Localized validations implementation
- Resource files with translations
- Resource.resx (Default English)
- Resource.en-US.resx
- Resource.es-PR.resx
- Translations and localization management server and client side withing the app and the user account
- Http Services with user token management and api integration
- Message and Notifications management using SignalR (In-App only at the moment)
- User and Application State Management
- User Info Storage Management (Encrypted by default)
- Session
- Persistent
- Session Token Lifetime Management
- Auto Renew Session Token when Session is Expired in a User Action after Server Response
- Ask for More Session Time
- Redirect on Session Expired Client time out
- Configuration file management
- Configuration file chooser per enviroment management (Debug (Development), Staging (Test) or Release (Production))
- Pre-implemented localized core base classes for forms and data views per every table
- *CardViewComponent.razor
- *DetailsComponent.razor
- *FormViewComponent.razor
- *IndexViewComponent.razor
- *ListViewComponent.razor
- *TableViewComponent.razor
- *TypeaheadComponent.razor
- Every UI component shares the same base UI class
- Every UI component is editable and extendable as needed
- Device Oriented UI/UX
- Desktop
- Tablet
- Mobile
- Bootstrap 5 Template
- Pre-Implemented Controllers with authorization and authentication
- Pre-Implemented Repositories as services and pre registered service container
- Repository and Service patterns have been redefined and reimplemented as Repository Service using Base Api Context Service
- RESTful API Arquitecture (JSON, XML and CSV)
- .csv and .xlsx document templates for posting to the API per controller
- Services are pre-registered per enviroment or platform
- Response has a base api response format
- Search results are always paged by default
- CRUD methods are pre implemented supports single and multiple, also with performance multiple method.
- Multiple Blob Storage Provider Support (Thanks to Storage.Net)
- Microsoft Azure
- Blob Storage
- File Storage
- Data Lake Gen 1
- Data Lake Gen 2
- Storage Queue
- Event Hubs
- Service Bus
- Amazon Web Services
- Simple Storage Service (S3)
- Simple Queue Service (SQS)
- Google Cloud Platform
- Cloud Storage
- Misc
- Azure Databricks DBFS
- Service Fabric Reliable Collections
- Azure Key Vault
- Local Disk (Blobs, Messaging)
- Zip Archive (Blobs)
- In-Memory (Blobs, Messaging)
- FTP (Blobs)
- Blobs Management is centralized and auto managed
- Blobs doesn't never need a child table to support multiple file upload references
- Define a binary column field on your table and the tool will manage it for you saving the file reference in the binary column and the file in the physical storage.
- Microsoft Azure
- Server exceptions are pre-handled and recorded
- Every operation is auto audited with option of rolling back any operation at any time
- SDK export available to share from base project for .net
- Login
- Register
- Forgot password
- Reset password
- Translate Component
- Confirm Email/Account
- Users account management
- Audit trails
- Exception logs
- Supported cultures
- Notification messages
- User blobs
- Smtp pre implementation and integration with localized basic email templates
- File component
- Navigation sidebar menu component with icons
- Empty layout
- Log out
- Application configuration
- Application configuration source
- Application State
- Device
- Device Storage
- In App Notifications (Push notification integration is on the way)
- Resource manager localizer
- Save file
- Supported cultures
- Pre implemented base class for forms and data views
- Load (with before and after actions)
- Validate (using fluentvalidation)
- Save (create & update) (with before and after actions)
- Reset (with before and after actions)
- Cancel (with before and after actions)
- Delete (with before and after actions)
- Form State Management (create, update, details, copy, delete & deleted)
- Blob Management
- Request and Response Management
- Single and Multiple State Management
- Search (with before and after actions)
- Select Record/s (with before and after actions)
- Records Selection Mode (single or multiple)
- Minimum and Maximun Selection Range Management
- Minimun and Maximun Selection Reach Listenable
- Filtering (client and server)
- Sorting (client and server)
- Paged Data Management
- Go Previous Page (client and server)
- Go Next Page (client and server)
- Go to Page Index (client and server)
- Page Size (client and server)
- Page Sort By (client and server)
- Collection Mode Management (append or replace)
- Chained components behavior (behavior like stepper) with a few source modifications
- Forms (Back or Save/Next)
- CRUD (Create, Read, Update, Delete operations) (back and/or next)
- Data Views (Select single or multiple, back and/or next)
- Reduces and cuts development time and deliverables.
- Reduces and cuts the numbers of developers or team.
- Reduces and cuts development bugs or errors margin to or almost 0% (I have done myself a few dozen of projects without any bugs or errors of any class).
- Increase developers productivity starting from 500% to 1200% (This is my estimates based on how slow or fast I have delivered a project).
- The development from scratch application real estimated time will be cut from 62% to 84% (You will only need to develop for 38% to 26% of the project).
- Extreme fast, optimized and high level development.
- Less coding to resolve general or specific software patterns.
- Less code means easier to maintain.
- What are the things I need to do or should take care starting from this advantage point?
- Adjust labels text and translations on forms and data views (This will be improved in the near future but what you will get out of the box is still great).
- Apply business and security rules to the web api and the web user interface.
- Third party api/service integrations.
- Dashboards and/or reports.
For questions, quote or demo of the service you can contact me via email at onelinetool@gmail.com
Quotes are based on a Botoneline which reverse engineering your database and estimates based on the tables, fields and table relationship design.
- Push notifications and notifications history Management (Cross Platform, firebase/azure)
- In-App notification and messages is available for now
- Improve messaging form
- Confirm action by password
- In-Component user defined (persistent or by expiration date) notification alerts
- Add a batch search procedure on the api search methods
- Add option for refreshing lists for certain options (add, edit, delete)
- Add mechanism to load dropdowns only once
- Add filtering mechanisms so that dropdowns filter client side only when doing a single load.
- Add upload .csv via file on Http Service Method
- Change Actions to EventCallback
- Cross Platform Device API's Implementations for Browser and Xamarin.
- Accelerometer
- App Information
- App Theme
- Barometer
- Battery
- Clipboard
- Color Converters
- Compass
- Connectivity
- Detect Shake
- Device Display Information
- Device Information
- File System
- Flashlight
- Geocoding
- Geolocation
- Gyroscope
- Launcher
- Magnetometer
- MainThread
- Maps
- Open Browser
- Orientation Sensor
- Permissions
- Phone Dialer
- Platform Extensions
- Preferences
- Secure Storage
- Share
- SMS
- Text-to-Speech
- Unit Converters
- Version Tracking
- Vibrate
- Web Authenticator
- Chat (Cross Platform)
- From clients to app/service representative
- Between users
- Groups
- App/service representative chat with connected clients
- User invites other users to manage profile including access permissions management
When web client and web api applications starts the first time crashes and closes unexpectedly without throwing any error.
This error sometimes happens randomly the first time only, just run it again and it should start after that.
This error sometimes happens randomly, to fix it delete the .vs
folder on the solution path and run again it should work after that.