All-in-one Discord bot including a web interface and its own mobile app!
Features
Nightwatch aims to combine the features of all popular bots into one bot.
Features include:
- Moderation
- Anti spam Ƥ
- Anti raid Ƥ
- Anti nuke Ƥ
- Auto purge Ƥ
- Music Ƥ
- Games
- Economy
- Gambling
- Giveaways
- Lockdown Ƥ
- Referral rewards
- Self assignable roles
- Slow mode Ƥ
- Suggestions
- Support tickets
- Polls
- Custom Social Media/Friend system
- Image/Game/Music/Anime/etc search
- Server linking Ƥ
- Voice/Text linking Ƥ
- Plugins
- Integration with other services
- REST API for third party integration
- Beautiful web interface
- Custom user/role/permission system
- Cross-platform mobile app
- ...And much more
Want other features added? Let us know by making a Feature Request
Please note that all listed features may not be implemented yet. This list mainly serves as a roadmap.
Features marked with Ƥ require Nightwatch Premium
Nightwatch Premium
Want to unlock Nightwatch Premium and get access to some cool commands and features?
Get Premium: https://patreon.com/ihaxjoker
Benefits of Premium:
- Works in all Discord servers you are the owner of!
- Unlocks all features marked with Ƥ
- Premium commands can be used in all servers, regardless of whether the server owner has Premium
- Priority support
- Early access to new features
- Exclusive role in the Nightwatch Discord
Help Wanted!
Nightwatch is looking for contributors.
There are two ways you can contribute:
- Indirect contribution: Creating issues in GitHub that we can address (Feature requests, bug reports, etc.).
- Direct contribution: Submitting pull requests to add functionality or improve the codebase.
If you want to indirectly contribute, feel free! Just follow the community guidelines, and try to follow the issue templates.
If you would like to directly contribute to Nightwatch:
- Join the Nightwatch Discord
- Claim a Contributor role with
n.iam Contributor
to get access to a channel for discussing Nightwatch development. - Fork the repo.
- Point all pull requests to the
develop
branch.
Contact Us
Want to talk about my bot, have questions about it, or just want to chat?
Come visit my Discord server. I'd be happy to talk to you.
See the bot in action, test it out, see what it can do for you.
Donate
If you appreciate what we do and want to support the development of this project, please consider donating. https://liberapay.com/ihaxjoker/donate
If you would like to support us without spending money, give the repo a star. We value those as well!
Whether you donate or star, we appreciate your support.
Installation
Prerequisites
- Node.js >= v10 LTS
- PostgreSQL
- Redis
- An HTTP server for the web interface
- (optional) Yarn
Setup
- Clone the repo
- Inside the repo, run
npm install
, oryarn
if you are using Yarn - In the
config
directory, duplicate theconfig.example.json
and name itconfig.json
- Edit the file and fill in the values. Remove any comments
- Any field with a default value does not have to be modified!
- Only the
bot
,api
, anddb
sections are required; anything outside of those sections are optional - Obtain a bot token from here. You'll have to create a bot if you haven't already
- Create a database in PostgreSQL for the bot
- Start the API with
npm run api:start
oryarn api:start
- Start the bot with
npm run bot:start
oryarn bot:start
- Build the web interface with
npm run web:prod
oryarn web:prod
- Or run it on a development server with
npm run web:start
oryarn web:start
- Or run it on a development server with
- Invite the bot to your server
Background
Nightwatch started as a tiny bot for a single Discord server. Over the years, it has transformed and scaled to work in any server. It has been through several rewrites, and has evolved in performance, functionality, and design.
Why was this bot created?
I created this bot to eliminate how many bots you use in your server. Having several bots makes your server look unprofessional and gives users the feeling that the bots are the only good thing about the server.
I wanted to make a bot that combines all the popular features from the other bots into a single bot. Bots should compliment your server, not control it.
Lastly, I wanted to introduce a bot that was professionally designed, using enterprise design patterns and a highly scalable architecture. Compared to other bots, Nightwatch is built for scale with industry standards to back its design. It was intended to be a commercial application, but was open sourced to show off its clean code and prove its abilities.
Contribute
Any developer is allowed to contribute. Fork the repo, make some changes (e.g. add features, fix bugs, etc.) and make a Pull Request to the develop branch. If approved, we will merge your changes, and you will be added as a contributor!
We are open for suggestions, and want the end-product to be awesome. If you have an idea, please share it.
Support
If there are any questions or issues, please make a ticket in GitHub and we will respond as soon as we can. https://github.com/Nightwatch/nightwatch/issues