Re-architect Drama-Otaku Infrastructure
closed
Amrayu78
Goals:
- Maintain functionality
- Create the possibility of future improvements
- Get rid of all plugins, leave only the indispensable ones, and replace the rest with code
- Improve the page loading speed
- Transfer all data into a new format
- Normalize css and js
Main/Basic Features:
- Adding, Editing, Deleting Dramas, Movies, SPs, Series, People, Groups, Oshi Spots
- Treasure Island: A quick index of available Dramas, Movies, and SPs that have a Subtitle Project
- Forever Lonely: Dramas, Movies, and SPs that do NOT have a Pirate's Booty link
- Pirate's Booty: A quick index of Dramas, Movies, and SPs that contain a Pirate's Booty link
- Advanced Search: Allows users to drill down and search by specifics
Community-related Features:
- Custom Lists: A collection of Dramas, Movies, SPs or People/Groups or Oshi Spots
- Reviews: A user review of a Drama, Movie, or SP
- Watch Lists: Track Dramas, Movies, and SPs that a user has watched [1/18/25: Give users option to make watchlist public; should be private by default]
- Oshi Spot List (temporary name): Track Oshi Spots that a user wants to visit or has visited; similar to Watch Lists
- Nyans: User can like any of the main post types
- Bookmarks: User can bookmark any of the main post types
- Dark mode
- Subtitle Requests: allows users to request Japanese and English subtitles for a title.
- Direct Messages: Allow users to send messages to other users.
- Comments: Allow users to add comments to posts.
- BuddyPress: This is not a must-have feature, we're not really using it to it's full potential. The only thing we're using is the following: Direct messages and the user profile.
Admin Features:
- Track user downloads in dashboard
- Track user downloads for subtitle projects
- Enhanced tracking: Add a hash/unique identifier to subtitles (.ass or .srt, these are essentially text files). When a user clicks the file, the site will add a hash/unique identifier embedded within the file, record the hash in a log including user details (date, time, username, email), the new regenerated file is served to the user.
- Include some admin tools for checking of tampered files. If a user tampers a file, there should be a way to find the old hash of the file. Admin will upload the tampered file to the site so it can be analyzed. We have issues with users reuploading to other sites, so adding a unique hash to each file will help enforce the rules on the site. Adding a fallback to check if the file is tampered will help admin track who the original downloader is.
- Cloning from one post type to another (Dramas, Movies, SPs only)
- Close off and turn on public registrations: We manually go through and check registrations and we only allow users to register at a specific time. We use BuddyPress registration form that allows additional fields. We then redirect URL to the form when we want to close it off, to turn it back on, we turn off the redirect.
Amrayu78
closed
Rearchitecture is done. Pushed out in March 2025.
Amrayu78
Hi Max Romanchenko Here’s the re-architecture ticket. It’s not a full list, but I guess it’s time we start tackling it. Thanks. I’m here to discuss too.
Max Romanchenko
Amrayu78 I agree that it’s time to think about this more seriously. I’m in the process of choosing a tool that might make my job a little easier. The plan is to completely redo everything. But I’m having trouble because I don’t even know where to start yet. It’s not a replacement; it’s an attempt to make it better than it is now, trying not to repeat the mistakes of the past.
I want to stop using Toolset and other plugins, and move everything to the code level. It’s a challenge, no doubt. But the bigger challenge is how to transfer the data to the new format.
Here’s the plan:
- I’ll work on a test server and recreate the site step by step, without Toolset and other dependencies.
- I’ll ask you questions, as I’ve forgotten a lot of things (unfortunately, even the ones I did myself). I really want to simplify the site’s structure to make it easier to manage - all with your consent, of course.
- Data transfer, which is one of the most difficult parts.
I think if we move step by step, we can do it. It's long and complicated and time consuming, but I can see that it's necessary. The site is already experiencing technical difficulties and needs help. Wouldn’t it be cool if we started doing everything as if it were a new site? Maybe there are things you don’t like about the existing site. Perhaps something inconvenient for content admins? Let’s breathe new life into it.
I don’t want to replicate everything one-to-one. What’s good can stay, but I believe that many things can be made more convenient for both admins and users. For my part, I will try to find better solutions than I have now.
Amrayu78
Max Romanchenko: Thank you Max! That sounds like a great idea. Let me pay you some money upfront for this. I know it will be a big task, but if we do it bit-by-bit I think it can work. Feel free to message me.
Max Romanchenko
Amrayu78 Thank you so much for your payment and trust! I’m incredibly grateful and will do my best to create an even better version of the site. Thanks a lot!
Amrayu78
Max Romanchenko I hope it’s enough for the project. If not, we can discuss offline if more is needed. 😆 I’m willing to pay what it takes within reason.
Max Romanchenko
Amrayu78 I am very grateful, but for now, I'm not focusing on the money. Instead, I'm looking at the challenges ahead. This is enough to accomplish a lot.
I have a few suggestions:
Do you agree that we should stop adding new features to the current site and only provide basic support (and bugs of course)? All efforts should be put into the redesign?
As a developer, I often encountered the desire to reduce the number of post types (Dramas, Movies, SPs) to make management simpler. They are quite similar, and it would be logical to combine them and differentiate them at the category level (for example, as they are currently divided by release year). Is this something we can discuss? The only downside is the URL change for Dramas, Movies, and SPs. Does it make sense, and is it convenient for you to manage this now?
Amrayu78
Max Romanchenko:
- Yes, I'll stop creating new features for now until the new architecture is in place. I don't want to complicate things. We'll just need basic support when bugs come up.
- We can go to one post type for Dramas, Movies and SPs, but what about old links? I guess if you programmatically create redirects for old pages to go to the new page, then that's fine. We can retire redirects as the new URL structure is picked up by search engines.
Max Romanchenko
Amrayu78 Hi Duong,
Thank you for your responses! Yes, I also thought about redirects. I propose to leave everything as it is for now to preserve the URL structure. I will try to find a way to make it easier to query.
I also want to change the site's theme to a clean one, specially created for Drama Otaku, as the current one has a lot of unnecessary elements which slow it down. I hope this is not a problem? Of course, all necessary functionality will be preserved. Do I have the freedom to make such decisions?
Amrayu78
Max Romanchenko; yup go ahead and change the theme if you want. I prefer clean minimal themes. I think you can tell what I like. Thanks.
Max Romanchenko
Amrayu78 Okay, thank you!
It won't be a theme from the wordpress repository or a paid theme, it will be a fully custom theme under the Drama Otaku brand)
Amrayu78
Max Romanchenko sounds good �
Max Romanchenko
Amrayu78 Hi Duong,
I am happy to announce that I am working on a new theme for the site. There is a lot to do, and I’m trying to take it step by step, but even the frontend needs a major overhaul.
My plan is as follows: first, I will work on the frontend (creating the theme), and then I will focus on the functionality.
A simple example: I started with the header.
Problem 1: I wanted to improve the logo. It was in PNG format, but I converted it to a vector format (SVG). It looks much better on retina displays and is lighter in size (see screenshot).
Problem 2: The menu items. Each menu item is essentially a post in the database. There are quite a lot of menu items now, so it’s quite expensive in terms of page load speed.
For this reason, I’ve completely disabled the menu in the theme and moved it to a file.
The menu doesn’t change often, so this decision is justified. It will reduce the load on the database.
I would like to redo everything that slows down the site. Do you agree with me? I wish we had the same goals.
In the meantime, I’m quite worried because we’re facing electricity issues again due to rocket attacks. Sometimes we don’t have electricity for up to 2 days (
Please let me know what kind of timeframe you expect from me.
If I am unable to meet your expectations, I will be forced to refund the payment.
Amrayu78
Max Romanchenko: Hi Max, please take your time. We are not in a rush. I’m fine with whatever you decide to do to make the site faster. The current site works and there’s no major bugs. Please stay safe.
Max Romanchenko
Amrayu78 Thank you! I'll keep working on it.
Max Romanchenko
Hi Duong, I'm working on a theme and want to take full control of all plugins to improve speed and manage all elements effectively. I want to rewrite absolutely everything!
I am currently developing a dark mode. Are you satisfied with the current styles in the dark theme? I'd like to enhance the contrast. Is this something I can do?
Max Romanchenko
Hi Duong,
Is everything okay?
I’m currently working on bookmarks, and i’m thinking of making the process simpler: users can click on a bookmark icon to add a post to their favorites without needing to specify a category. In their personal account, favorite posts can be automatically categorized based on the type of post and data (like favorite drama, news, actor, etc.). This should enhance the user experience by reducing the number of clicks needed.
I also have big plans to redesign the personal account section and integrate many functions. For example, I’m considering moving away from BuddyPress due to its heavy load and creating a unified dashboard that includes only the necessary features. This should streamline everything and make it easier to use.
Hope all is well with you and our global redesign is on track.
Amrayu78
Max Romanchenko: Sure go ahead and take over the dark theme. I don't like these dark mode plugins since they are always trying to sell me things.
Amrayu78
Max Romanchenko: Sorry Max! I didn't see your earlier message and I didn't want to bother you. But yes, please try to move away from as many plugins as possible! Buddypress is annoying, but we only use it for DMs, which I don't think many users use. Go ahead and do whatever you need.
Max Romanchenko
Amrayu78 It's good to hear from you! Thanks for confirming it. I'm now actively working full-time on Drama Otaku and dedicating all my time to it. I still have many questions about how the transition will go, but for now, I'm focusing on building the new structure on the new site and will think about the next steps later. The data migration process is one of the most challenging and time-consuming tasks.
For example, I've already implemented adding a post to bookmarks, but that's not enough. The old site still needs:
- The new functionality to be transferred to the old site.
- All data (such as the current number of post bookmarks) to be transferred to the new format. I haven't yet found an easy way to do this.
Bookmarks are just a simple example of how much work lies ahead. After all, I want to have everything under centralized control of Drama Otaku, without using third-party plugins.
What's also been done is the improvement of request creation and storage, which will greatly enhance the loading speed of drama/movie/special pages But I'll still need to deal with migrating existing data somehow).
There's a lot of stuff in the progress right now. Honestly, I don't know how best to organize the work so that you can see the process as well as I can.. I considered keeping a changelog, but it was quite time-consuming and not very informative. Maybe we should create a subtopic for each task? I would like to have everything in one place.
Please let me know how you prefer to keep progress.
Thank you!
Amrayu78
Max Romanchenko: Hi Max, thanks for the update! Maybe we can start a Google doc and separate into sections? You can add details there? Let me start a Google doc and I'll email you the link. Let me know if it works or not.
Also there is a rather important feature that I want enhanced related to download tracking. I will put it on the Google sheet. Thanks!
Max Romanchenko
Amrayu78 Sure, let's try the Google sheet and see how it goes.
Thank you!
Amrayu78
Max Romanchenko: Here's the sheet! Let me know if it works for you: https://docs.google.com/spreadsheets/d/14gO-uIp9Udw7C_t8TS_v-Ki9_reoaM32qCr1jXpYDmc/edit?usp=sharing
Max Romanchenko
Amrayu78 Thanks for the spreadsheet! It's a great start. But the thing is, each of the tasks has many subtasks.
So I don't know how to display that within the table yet. For example “WordPress Theme” includes writing all the css, js and layout of all existing pages. Also this theme includes registering all post types, taxonomies and fields. Yes, the site will not use any of the Tooset components, everything will be done using the core WordpPress functions. Just keep in mind that I'm doing all of this at the same time )
I'm spending all my time on the site, and I'm already making some progress. When enough is done, I'll show you what's already there.
Thank you!
Amrayu78
Max Romanchenko: you can create separate tasks for those, underneath the main one. You can list them as you go and work on them.
Max Romanchenko
Amrayu78 Okay! Thank you!
Question on another topic - what's one word I should call Drama, Movie, Special? This is purely for naming the template and fields (for me). I just want the word to reflect the meaning. Could you advise me?
Amrayu78
Max Romanchenko: I think the most proper term to call these are “titles” in plural or “title” for singular.
Max Romanchenko
Amrayu78 Thank you! I'll use it.
Max Romanchenko
Hi Duong,
I have 2 questions about subtitle project.
- I found a field in subtitle project, and I have doubts what it is for. There are only 22 posts in the database with this field (look at the screenshot please). This field is missing in the add/edit form. Is it necessary?
- The second field - disclaimers (Additional Vetting) - there is a checkbox in the add form, but it is not in the edit form. It is also absent in the template. Is this field necessary?