Subscription-Management
Manage and track your subscriptions and expenses easily.
File Explorer
Download Latest Version (.zip)- docker-build.yml
- 2025-07-17_06-42Z-่งฃ้้ไธญ็ไปฃ็ .md
- .what-is-this.md
- dashboard.png
- monthly-expense.png
- reports-dark.png
- reports.png
- subscriptions-payments.png
- subscriptions.png
- API_DOCUMENTATION.md
- AUTHENTICATION.md
- BACKEND_ARCHITECTURE.md
- DEPLOYMENT.zh-CN.md
- i18n-guide.md
- NOTIFICATION_SYSTEM.md
- STRUCTURE.md
- authCredentials.js
- currencies.js
- database.js
- index.js
- notification.js
- notificationTemplates.js
- analyticsController.js
- categoriesController.js
- exchangeRateController.js
- monthlyCategorySummaryController.js
- notificationController.js
- paymentHistoryController.js
- paymentMethodsController.js
- schedulerController.js
- settingsController.js
- subscriptionController.js
- subscriptionManagementController.js
- subscriptionRenewalSchedulerController.js
- templateController.js
- init.js
- migrate.js
- migrations.js
- schema.sql
- auth.js
- errorHandler.js
- requireLogin.js
- session.js
- analytics.js
- auth.js
- categoriesAndPaymentMethods.js
- exchangeRates.js
- monthlyCategorySummary.js
- notifications.js
- paymentHistory.js
- scheduler.js
- settings.js
- subscriptionManagement.js
- subscriptionRenewalScheduler.js
- subscriptions.js
- templates.js
- userPreferences.js
- resetData.js
- rotate-admin-password.js
- run-migration.js
- analyticsService.js
- emailService.js
- exchangeRateDbService.js
- exchangeRateScheduler.js
- exchangeRateService.js
- monthlyCategorySummaryService.js
- notificationScheduler.js
- notificationService.js
- paymentHistoryService.js
- settingsService.js
- subscriptionManagementService.js
- subscriptionRenewalScheduler.js
- subscriptionService.js
- telegramService.js
- userPreferenceService.js
- userService.js
- auth.integration.test.js
- jest.config.js
- notificationController.boolean.test.js
- validator.boolean.test.js
- BaseRepository.js
- dateUtils.js
- logger.js
- responseHelper.js
- validator.js
- package-lock.json
- package.json
- server.js
- start.sh
- CategoryPieChart.tsx
- ExpenseBarChart.tsx
- ExpenseDetailDialog.tsx
- ExpenseInfoCards.tsx
- ExpenseTrendChart.tsx
- ExpenseTrendChartNew.tsx
- TrendChart.tsx
- YearlyTrendChart.tsx
- YearlyTrendChartNew.tsx
- CategoryBreakdown.tsx
- RecentlyPaid.tsx
- StatCard.tsx
- UpcomingRenewals.tsx
- CompleteStep.tsx
- FileUploadStep.tsx
- FileValidationStep.tsx
- ReviewStep.tsx
- fileParser.ts
- ImportModal.tsx
- types.ts
- MainLayout.tsx
- EmailConfig.tsx
- NotificationHistory.tsx
- NotificationRules.tsx
- NotificationSettings.tsx
- SchedulerSettings.tsx
- TelegramConfig.tsx
- AmountInput.tsx
- CategorySelector.tsx
- FormField.tsx
- PaymentMethodSelector.tsx
- types.ts
- validation.ts
- PaymentHistoryHeader.tsx
- PaymentListItem.tsx
- PaymentListState.tsx
- usePaymentOperations.ts
- CurrencySelector.tsx
- OptionsManager.tsx
- PaymentHistorySection.tsx
- PaymentHistorySheet.tsx
- SubscriptionCard.tsx
- SubscriptionDetailDialog.tsx
- SubscriptionForm.tsx
- alert.tsx
- badge.tsx
- button.tsx
- card.tsx
- chart.tsx
- command.tsx
- confirm-dialog.tsx
- date-picker.tsx
- dialog.tsx
- dropdown-menu.tsx
- input.tsx
- label.tsx
- LanguageSwitcher.tsx
- pagination.tsx
- popover.tsx
- progress.tsx
- scroll-area.tsx
- search-input.tsx
- select.tsx
- separator.tsx
- sheet.tsx
- skeleton.tsx
- switch.tsx
- tabs.tsx
- textarea.tsx
- toast.tsx
- toaster.tsx
- toggle.tsx
- tooltip.tsx
- variants.ts
- ExchangeRateManager.tsx
- ModeToggle.tsx
- ThemeProvider.tsx
- api.ts
- constants.ts
- currency.ts
- use-confirmation.ts
- use-mobile.tsx
- use-toast.ts
- auth.json
- common.json
- dashboard.json
- navigation.json
- notification.json
- reports.json
- settings.json
- subscription.json
- validation.json
- auth.json
- common.json
- dashboard.json
- navigation.json
- notification.json
- reports.json
- settings.json
- subscription.json
- validation.json
- config.ts
- types.ts
- expense-analytics-api.ts
- expense-analytics.ts
- expense-info-analytics.ts
- subscription-utils.ts
- theme-sync.ts
- utils.ts
- ExpenseReportsPage.tsx
- HomePage.tsx
- LoginPage.tsx
- NotificationHistoryPage.tsx
- SettingsPage.tsx
- SubscriptionsPage.tsx
- authApi.ts
- exchangeRateApi.ts
- monthlyCategorySummaryApi.ts
- notificationApi.ts
- schedulerApi.ts
- authStore.ts
- notificationStore.ts
- optimisticStore.ts
- settingsStore.ts
- subscriptionHooks.ts
- subscriptionStore.ts
- useMonthlyExpenses.ts
- index.ts
- api-client.ts
- currency.ts
- dataTransform.ts
- date.ts
- error-handler.tsx
- error-utils.ts
- error-utils.tsx
- logger.ts
- App.tsx
- index.css
- main.tsx
- vite-env.d.ts
- .cursorindexingignore
- .dockerignore
- .env.development.example
- .env.production.example
- .gitattributes
- .gitignore
- components.json
- docker-compose.yml
- Dockerfile
- env.d.ts
- eslint.config.js
- index.html
- LICENSE
- package-lock.json
- package.json
- postcss.config.js
- README.md
- README.zh-CN.md
- tailwind.config.js
- tsconfig.app.json
- tsconfig.json
- tsconfig.node.json
- vite.config.ts
- vite.env.js
# Installation Guide
git clone https://github.com/huhusmang/Subscription-Management
Downloads the entire project code from GitHub to your computer.
cd Subscription-Management
Moves into the project folder you just downloaded.
2. Docker
Easy Recommended- Git Needed to download the project code from GitHub.
- Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
docker compose up -d
Builds and starts all defined containers (server, database, etc.) at once, in the background.
docker pull ghcr.io/huhusmang/subscription-management:<tag>
Type this command into your terminal and run it.
docker compose build && docker compose up -d
Builds and starts all defined containers (server, database, etc.) at once, in the background.
docker run -d \
Runs the built image as an actual container.
Pulled directly from this repo's README.
3. Node.js
Easynpm install
Downloads and installs the libraries listed in package.json.
npm run db:init
Type this command into your terminal and run it.
npm start
Starts the development/run server.
npm run dev
Starts the development/run server.
npm run db:migrate
Type this command into your terminal and run it.
Pulled directly from this repo's README.
