dart_verse_backend 1.4.0 copy "dart_verse_backend: ^1.4.0" to clipboard
dart_verse_backend: ^1.4.0 copied to clipboard

The ultimate dart backend framework.

Use this package as a library

Depend on it

Run this command:

With Dart:

 $ dart pub add dart_verse_backend

With Flutter:

 $ flutter pub add dart_verse_backend

This will add a line like this to your package's pubspec.yaml (and run an implicit dart pub get):

dependencies:
  dart_verse_backend: ^1.4.0

Alternatively, your editor might support dart pub get or flutter pub get. Check the docs for your editor to learn more.

Import it

Now in your Dart code, you can use:

import 'package:dart_verse_backend/constants/body_fields.dart';
import 'package:dart_verse_backend/constants/collections.dart';
import 'package:dart_verse_backend/constants/context_fields.dart';
import 'package:dart_verse_backend/constants/endpoints_constants.dart';
import 'package:dart_verse_backend/constants/error_codes.dart';
import 'package:dart_verse_backend/constants/error_messages.dart';
import 'package:dart_verse_backend/constants/global_constants.dart';
import 'package:dart_verse_backend/constants/header_fields.dart';
import 'package:dart_verse_backend/constants/logger.dart';
import 'package:dart_verse_backend/constants/model_fields.dart';
import 'package:dart_verse_backend/constants/path_fields.dart';
import 'package:dart_verse_backend/constants/reserved_keys.dart';
import 'package:dart_verse_backend/dart_verse.dart';
import 'package:dart_verse_backend/dashboard_server/constants/dashboard_endpoints.dart';
import 'package:dart_verse_backend/dashboard_server/dashboard.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/app_check.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/api_key_generator.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/api_key_info_datasource.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/api_secret_generator.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/check_app_datasource.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/checker/api_decoder.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/checker/base64_encrypter.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/checker/hmac_handler.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/datasources/random_generator.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/models/api_hash_model.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/models/api_hash_model.g.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/models/api_key_model.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/models/api_key_model.g.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/models/api_secret_model.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/models/api_user_model.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/models/api_user_model.g.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/data/repositories/api_keys_repo.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/server/api_crud_handlers.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/server/api_crud_server.dart';
import 'package:dart_verse_backend/dashboard_server/features/app_check/server/app_check_middleware.dart';
import 'package:dart_verse_backend/dashboard_server/features/auth/data/datasources/dashboard_auth.dart';
import 'package:dart_verse_backend/dashboard_server/features/server/data/datasources/dashboard_server.dart';
import 'package:dart_verse_backend/errors/models/api_key_exceptions.dart';
import 'package:dart_verse_backend/errors/models/app_check_exceptions.dart';
import 'package:dart_verse_backend/errors/models/app_exceptions.dart';
import 'package:dart_verse_backend/errors/models/auth_errors.dart';
import 'package:dart_verse_backend/errors/models/auth_server_exceptions.dart';
import 'package:dart_verse_backend/errors/models/database_errors.dart';
import 'package:dart_verse_backend/errors/models/db_server_exceptions.dart';
import 'package:dart_verse_backend/errors/models/email_exceptions.dart';
import 'package:dart_verse_backend/errors/models/email_verification_error.dart';
import 'package:dart_verse_backend/errors/models/encryption_exceptions.dart';
import 'package:dart_verse_backend/errors/models/server_errors.dart';
import 'package:dart_verse_backend/errors/models/storage_errors.dart';
import 'package:dart_verse_backend/errors/models/user_data_errors.dart';
import 'package:dart_verse_backend/errors/serverless_exception.dart';
import 'package:dart_verse_backend/features/app_database/controllers/auth_read.dart';
import 'package:dart_verse_backend/features/app_database/controllers/db_connect.dart';
import 'package:dart_verse_backend/features/app_database/controllers/db_connect/memory_db_connect.dart';
import 'package:dart_verse_backend/features/app_database/controllers/db_connect/mongo_db_connect.dart';
import 'package:dart_verse_backend/features/auth_db_provider/auth_db_provider.dart';
import 'package:dart_verse_backend/features/auth_db_provider/impl/memory_db_auth_provider/memory_db_auth_provider.dart';
import 'package:dart_verse_backend/features/auth_db_provider/impl/mongo_db_auth_provider/mongo_db_auth_provider.dart';
import 'package:dart_verse_backend/features/auth_db_provider/repo/memory_db_repo_provider.dart';
import 'package:dart_verse_backend/features/auth_db_provider/repo/mongo_db_repo_provider.dart';
import 'package:dart_verse_backend/features/cred_auth/repo/auth_with_cred.dart';
import 'package:dart_verse_backend/features/email_verification/impl/default_email_verification_provider.dart';
import 'package:dart_verse_backend/features/email_verification/repo/email_verification_provider.dart';
import 'package:dart_verse_backend/features/storage_buckets/data/bucket_ref_creator.dart';
import 'package:dart_verse_backend/features/storage_buckets/models/storage_bucket_model.dart';
import 'package:dart_verse_backend/features/storage_buckets/repo/bucket_permissions_repo.dart';
import 'package:dart_verse_backend/features/storage_buckets/storage_buckets.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/constants/boxes_keys.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/constants/permissions_constants.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/constants/storage_permissions.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/datasources/permission_parser.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/datasources/storage_permission_source.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/models/bucket_info.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/models/bucket_info.g.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/repositories/bucket_controller.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/repositories/permission_checker.dart';
import 'package:dart_verse_backend/features/storage_permissions/data/repositories/permission_controller.dart';
import 'package:dart_verse_backend/features/storage_permissions/utils/path_utils.dart';
import 'package:dart_verse_backend/features/storage_permissions/utils/permissions_utils.dart';
import 'package:dart_verse_backend/features/user_data_db_provider/memory_db_user_data_provider/memory_db_user_data_provider.dart';
import 'package:dart_verse_backend/features/user_data_db_provider/mongo_db_user_data_provider/mongo_db_user_data_provider.dart';
import 'package:dart_verse_backend/features/user_data_db_provider/user_data_db_provider.dart';
import 'package:dart_verse_backend/helpers/buckets_hive.dart';
import 'package:dart_verse_backend/layers/service_server/auth_server/auth_server.dart';
import 'package:dart_verse_backend/layers/service_server/auth_server/impl/default_auth_middlewares.dart';
import 'package:dart_verse_backend/layers/service_server/auth_server/impl/default_auth_server_handlers.dart';
import 'package:dart_verse_backend/layers/service_server/auth_server/impl/default_auth_server_settings.dart';
import 'package:dart_verse_backend/layers/service_server/auth_server/repo/auth_middlewares.dart';
import 'package:dart_verse_backend/layers/service_server/auth_server/repo/auth_server_handlers.dart';
import 'package:dart_verse_backend/layers/service_server/auth_server/repo/auth_server_settings.dart';
import 'package:dart_verse_backend/layers/service_server/db_server/db_server.dart';
import 'package:dart_verse_backend/layers/service_server/db_server/impl/default_db_server_endpoints.dart';
import 'package:dart_verse_backend/layers/service_server/db_server/impl/default_db_server_handlers.dart';
import 'package:dart_verse_backend/layers/service_server/db_server/impl/default_db_server_settings.dart';
import 'package:dart_verse_backend/layers/service_server/db_server/repo/db_server_endpoints.dart';
import 'package:dart_verse_backend/layers/service_server/db_server/repo/db_server_handlers.dart';
import 'package:dart_verse_backend/layers/service_server/db_server/repo/db_server_settings.dart';
import 'package:dart_verse_backend/layers/service_server/service_server.dart';
import 'package:dart_verse_backend/layers/service_server/storage_server/impl/default_storage_server_handlers.dart';
import 'package:dart_verse_backend/layers/service_server/storage_server/impl/default_storage_server_settings.dart';
import 'package:dart_verse_backend/layers/service_server/storage_server/repo/storage_server_handlers.dart';
import 'package:dart_verse_backend/layers/service_server/storage_server/repo/storage_server_settings.dart';
import 'package:dart_verse_backend/layers/service_server/storage_server/storage_server.dart';
import 'package:dart_verse_backend/layers/services/auth/auth_service.dart';
import 'package:dart_verse_backend/layers/services/auth/controllers/auth_collections.dart';
import 'package:dart_verse_backend/layers/services/auth/controllers/jwt_controller.dart';
import 'package:dart_verse_backend/layers/services/auth/controllers/secure_password.dart';
import 'package:dart_verse_backend/layers/services/auth/models/auth_model.dart';
import 'package:dart_verse_backend/layers/services/auth/models/auth_model.g.dart';
import 'package:dart_verse_backend/layers/services/auth/models/jwt_payload.dart';
import 'package:dart_verse_backend/layers/services/auth/models/jwt_payload.g.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/datasource/memory_db/memory_db_collection.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/datasource/memory_db/memory_db_document.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/datasource/mongo_db/mongo_db_collection.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/datasource/mongo_db/mongo_db_document.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/repositories/db_controllers/memory_db_controller.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/repositories/db_controllers/mongo_db_controller.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/repositories/memory_ref/coll_ref_memory.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/repositories/memory_ref/doc_ref_memory.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/repositories/mongo_ref/coll_ref_mongo.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/repositories/mongo_ref/doc_ref_mongo.dart';
import 'package:dart_verse_backend/layers/services/db_manager/data/repositories/path_entity.dart';
import 'package:dart_verse_backend/layers/services/db_manager/db_providers/impl/memory_db/memory_db_provider.dart';
import 'package:dart_verse_backend/layers/services/db_manager/db_providers/impl/mongo_db/mongo_db_provider.dart';
import 'package:dart_verse_backend/layers/services/db_manager/db_providers/repo/db_provider.dart';
import 'package:dart_verse_backend/layers/services/db_manager/db_service.dart';
import 'package:dart_verse_backend/layers/services/db_manager/domain/repositories/coll_ref_repo.dart';
import 'package:dart_verse_backend/layers/services/db_manager/domain/repositories/db_controller.dart';
import 'package:dart_verse_backend/layers/services/db_manager/domain/repositories/db_entity.dart';
import 'package:dart_verse_backend/layers/services/db_manager/domain/repositories/doc_ref_repo.dart';
import 'package:dart_verse_backend/layers/services/db_manager/utils/coll_ref_utils.dart';
import 'package:dart_verse_backend/layers/services/db_manager/utils/doc_ref_utils.dart';
import 'package:dart_verse_backend/layers/services/db_manager/validation/doc_validation.dart';
import 'package:dart_verse_backend/layers/services/email/email_service.dart';
import 'package:dart_verse_backend/layers/services/service.dart';
import 'package:dart_verse_backend/layers/services/storage_service/data/datasource/custom_isolate.dart';
import 'package:dart_verse_backend/layers/services/storage_service/data/datasource/storage_datasource.dart';
import 'package:dart_verse_backend/layers/services/storage_service/data/models/storage_ref.dart';
import 'package:dart_verse_backend/layers/services/storage_service/data/models/storage_ref.g.dart';
import 'package:dart_verse_backend/layers/services/storage_service/storage_service.dart';
import 'package:dart_verse_backend/layers/services/storage_service/utils/buckets_store.dart';
import 'package:dart_verse_backend/layers/services/storage_service/utils/isolates.dart';
import 'package:dart_verse_backend/layers/services/user_data/user_data_service.dart';
import 'package:dart_verse_backend/layers/services/web_server/datasource/server_handlers.dart';
import 'package:dart_verse_backend/layers/services/web_server/models/router_info.dart';
import 'package:dart_verse_backend/layers/services/web_server/repo/server_runner.dart';
import 'package:dart_verse_backend/layers/services/web_server/server_service.dart';
import 'package:dart_verse_backend/layers/services/web_sockets/data/models/web_socket_model.dart';
import 'package:dart_verse_backend/layers/services/web_sockets/web_sockets.dart';
import 'package:dart_verse_backend/layers/settings/app/app.dart';
import 'package:dart_verse_backend/layers/settings/app/app_utils.dart';
import 'package:dart_verse_backend/layers/settings/auth_settings/auth_settings.dart';
import 'package:dart_verse_backend/layers/settings/db_settings/db_settings.dart';
import 'package:dart_verse_backend/layers/settings/db_settings/impl/conn_link_impl.dart';
import 'package:dart_verse_backend/layers/settings/db_settings/repo/conn_link.dart';
import 'package:dart_verse_backend/layers/settings/defaults/default_app_settings.dart';
import 'package:dart_verse_backend/layers/settings/defaults/default_auth_settings.dart';
import 'package:dart_verse_backend/layers/settings/email_settings/email_settings.dart';
import 'package:dart_verse_backend/layers/settings/endpoints/endpoints.dart';
import 'package:dart_verse_backend/layers/settings/endpoints/impl/default_auth_endpoints.dart';
import 'package:dart_verse_backend/layers/settings/endpoints/impl/default_storage_endpoints.dart';
import 'package:dart_verse_backend/layers/settings/endpoints/repo/auth_endpoints.dart';
import 'package:dart_verse_backend/layers/settings/endpoints/repo/storage_endpoints.dart';
import 'package:dart_verse_backend/layers/settings/server_settings/entities/dashboard_server_settings.dart';
import 'package:dart_verse_backend/layers/settings/server_settings/entities/http_server_setting.dart';
import 'package:dart_verse_backend/layers/settings/server_settings/server_settings.dart';
import 'package:dart_verse_backend/layers/settings/server_settings/utils/send_response.dart';
import 'package:dart_verse_backend/layers/settings/storage_settings/storage_settings.dart';
import 'package:dart_verse_backend/layers/settings/user_data_settings/user_data_settings.dart';
import 'package:dart_verse_backend/transformers/auth_transformer.dart';
import 'package:dart_verse_backend/transformers/res_trans.dart';
import 'package:dart_verse_backend/utils/storage_utils.dart';
import 'package:dart_verse_backend/utils/string_utils.dart';