Caches ongoing development thread. Suggests/feedback accepted!
Hi everyone, welcome to Caches. This post will be constantly updated with the latest information on Caches. Including updates, information and new features being added. Check back often for the latest.
I spent the morning tweaking the object caching server on the backend today and I managed to squeeze out some more performance! About a 35% performance improvement. Go ahead, try it out. Click on the Groups link, or The Rostrum … it just feels snappier doesn’t it?
Some minor updates today. We’re still here working to make things better. In an effort to add more to our community moderation feature set, members now have the ability to report other members. If you feel a member provides nothing constructive or is a destructive member of the community you can report that member now. This is a small improvement over only being able to report a users posts, uploads and activities in the past. The ability for you to block members has not been changed. Reporting members helps the community stay a nice place to visit and share. You can report any member by visiting their profile page, clicking the 3 dots on the right and clicking Report Member. Please enter a detailed reason and any supporting evidence you may have to back up your accusation. An admin will be notified. Thank you!
Alright, team Caches is still hard at work after the merge festivities. We’ve finally shaken off our hangovers and we’re back at work! The end-to-end private encrypted messaging is getting close to completed with some little bugs that are driving me crazy. I will figure it out soon. In the meantime our good friend @Zombie Ducklings has been working on getting reactions integrated into activity and group posts. So we finally have it! It’s still a bit of a work in progress but you can see it in action in any of the groups like ETH Addicts Anonymous or Travellers Inn.
Now this is Caches and we do things a little different. Which means the reaction icon is on the right instead of the left. Why? Because I hope you choose to comment first. Also, if you notice the default reaction isn’t a “Like” it’s a “Dap” or also known as a Fist bump…. but that’s not all! You can hover over the Dap button and you’ll be given a multitude of choices! I will be adding other custom reactions in the future so I’d love to hear your comments. We aren’t just limited to the emoji keyboard either. The sky is the limit!
The Merge went off with very little trouble! Hurray! Due to the celebration we have just one minor update right now. We have added the EI Panda contract to our authentication system! Now EIPanda holders will get a special badge next to their username like EVM’s. Right now EIPanda NFT holders don’t get any special privileges, but that may change in the future. For now, if you have a Panda in the wallet you use to sign onto Caches with, log out, then log back in to get your badge!
HAPPY MERGING DAY HOMIES!
Thought I was dead huh? Hahah! What is dead may never die. Also we have some more minor updates in preparation for the end-to-end encrypted messaging feature. On merge day! Oh man! So without further ado, here are the updates
- Forums – Handled forum discussion and reply right click and paste action issue, adds duplicate copies from the clipboard
- Activity – Handled activity comment not showing attachment issue when read more is clicked
- Activity – Handled broken preview issue when adding a new line with the link
- Activity – Handled preview issues for URL shortener sites
- Profiles – Handled course tab not working issue for non-English language slug
- Profiles – Handled profile type and social link profile fields value not showing issue in the profile
- Core – Icon Pack updated with latest icons
- Core – Code refactoring by using transients to optimize the check updates logic for the plugin
- API – Handled invalid API response for report content categories with special characters
- Fix: Handled zoom meeting count-down translation problem
Fix: Handled font not getting applied to sub-menus
Fix: Groups styling issue for group invites members pagination
Fix: Check updates logic for the theme
Fix: 404 page SVG image not compatible with all browsers issue
Update: Icon Pack updated with latest icons
Alright, we got some minor platform updates from the upstream developers yesterday. Everything looked great on the staging server so we went ahead and rolled it out here. As usual there are some UI fixes from @Zombie Ducklings as well.
- Notifications – Handled notification content backslash issue for specific special characters
- Notifications – Handled notification count issue after marking notifications read
- Core – Small improvement in @mention logic when searching for members
- API – Handled group organizer permission issue
- API – Handled group members endpoint missing
Zombie’s Duckdates (hah!)
- Fix: Group directory minor heading UI issue in the responsive view
- Fix: Small improvement to tab structure to allow switching between fields in a meaningful order
- Fix: Forum discussion reply notification issue not taking to correct page
- Fix: Forum discussion link issue not scrolling to the reply
- Update: Updated with latest icons
You may have noticed you were logged out. Yay! That means my automatic monthly (on the 2nd) session key rotation script worked! This will be a monthly occurrence to help prevent session hijacking.
In other news I have decided to roll back the end-to-end private messaging upgrade for now. It introduced a few bugs in other parts of the site that I wasn’t prepared for. That’s what beta tests are for though. Don’t worry! I will get back to the lab and introduce this feature in a new reduced bug formula soon, I promise. Thank you to everyone for the feedback and bug reports on this big upgrade, it’s been a huge help. I have also submitted the code to the upstream developers for direct integration into the platform.
Alright! Encryption is a fantastic thing but end-to-end encryption is a beautiful thing! I am proud to announce that private messaging between members on Caches is now encrypted end-to-end utilizing Pusher channels. This little upgrade not only provides encryption for your private conversations, but adds some nice features like live updating message box, typing … notification and live online status! Sweet! Now this is beta so there are a few little bugs. Primarily you can no longer just open up a new message box and start typing a name to search for a member. I will get that fixed. In the meantime, check out the members directory and start connecting and following other members. Then on your profile page you can click the connections tab, and hit the button to send a private message. It’s also a great way to keep track of updates from just the people you want to. In an effort to decentralize my backend infrastructure a bit I chose the EU Ireland cluster for my pusher API connection point. Unfortunately that means my server here in the US has to reach out to Ireland each time you start a new conversation which means some latency before the chat starts. I’ll work to shave some more milliseconds off. After the connection is made between two members all messaging and features should be under 10ms.
To use this feature: You must log out, refresh the page, and log back in again. That will generate your private end-to-end encryption key and tie it to your anonymized username in our db. Our database does not store private keys! No one does! It’s End-to-end like iMessage or Whatsapp or Slack. I’ve tested this on mobile and it seems to be working there ok too. Please report any bugs you have! Thank you!
Hello everyone, JBM is back in the saddle. Big thanks to @Zombie Ducklings for watching over everything for me while I was gone. I’m going to take a few days to catch up, and settle back in. Development at this point will likely move a little slower as we approach the merge. I will of course keep you posted.
Good morning everyone. This is @Zombie Ducklings . JBM has entrusted me with this project while he mourns the loss of his friend. I just wanted to introduce myself and let everyone know I am taking this as serious as JBM does. I know this means a lot to him and I will not let him or you down. I am not JBM, but I promise I will do my best to fill in his shoes while he’s gone. I do have a way to reach him if there is an emergency but I would prefer not to disturb him if at all possible. Additionally, I will stay out of the Admin account unless it’s absolutely necessary. I hope he returns soon in good health and spirits. JBM, if you’re reading this, my heart goes out to you love. ❤️
JBM gave me a basic linux validator security guide to post in the Vampire Hunters forum before he left. I posted that today. I ran a few security updates on the sever today and they all went smoothly and it appears so far that they didn’t break anything. There isn’t a lot more to mention today, but I wanted to introduce myself, please don’t hesitate to reach out if you need assistance.
Woo! Lots of updates today from the upstream developer. Everything looked solid on the staging server so we loaded it up here today! Now on the surface you probably won’t notice a lot … but trust me, it’s there. Full change log below. Oh and JBM posted a Zoom Meeting for the merge in the ETH Addicts Anonymous group, btw.
Upstream developer updates
Forums – Small improvement to allow creating tags with spaces at the time of adding discussion
Forums – Small improvement to change discussion dropdown format when moving reply to a specific discussion
Activity – Handled embed preview issue for forum discussion auto-generated activity
Media – Handled group video not playing issue when members are not allowed to upload
Core – Handled draft issue for activity, forum discussion, and replies when uploaded media removed
API – Handled auto-generated forum discussion activity embed iframe issue
UI / Frontend updates from @Zombie Ducklings
Fixed: [ld-profile] expand/collapse not working issue in forums
Fixed: ‘View discussion’ button UI issue in forums
Fixed: Minor UI fixes to match platform updates
- Update: Improved link preview and embeds styling in activity posts
Alright, so I’ve been working on this one a while now, and it’s not ready for release but I’m too excited to not say something. I have been working hard on improving the private messaging. Currently those messages are encrypted and stored in the Caches database. While this is moderately secure from the outside world, it doesn’t ensure that Administrators can’t read them if they really wanted to. That’s a huge liability for us here at Caches. Also the messaging feature currently doesn’t live update. You have to refresh the screen. So it’s more like email and less like a messaging app. Well I plan to change that! I have been working on Pusher integration for the messaging system here at Caches. What that means for you is true end-to-end encrypted, live updating, nothing stored locally, private messaging!
This is in beta on the Caches development server currently and me and my small but dedicated team are putting it through its paces. Release should be Soon™ barring any complications.
Well some bad news, and some good news. The bad news is in my effort to integrate the Plus/Minus voting system into forum posts and replies rather than in the message body I wiped out all the votes. Bummer. My mission was a success though and the buttons aren’t part of the content anymore! That’s not the good news though.
I am happy to announce that usernames are completely random now! Check out the screenshot below! The username on the top is a brand new wallet I signed in with. Notice the username isn’t a wallet address like the one below it? Sweet huh!? There you have it, totally anonymous … even to me. We also have a new popup modal upon account creation. You’re given two fields, your “Handle” which is your display name, it’s a required field. The next field is your email address. This field is totally optional.
If anyone signed in with a wallet address previously that wants to be anonymous now, please send me a message anywhere and I will delete your account so you can sign in under the new system. Your wallet address is still hidden from the front end and other users, just not me.
We’re in the final testing for the update to the web3 authentication. On the plus side it should bring tighter integration, better ability to style, and be more reliable. Of course all of that’s on top of anonymizing wallet addresses, so you’re totally anonymous … even to me. I’ve also decided to disable the learning modules for now. Reception and feedback was less than I had hoped from EVMs. They were never public facing anyway so it should go unnoticed. If some interest develops some how I can easily re-enable it. I will move on to monetization plan B for now. Stay tuned on that front.
I believe I have sorted out the issue where users that are logged in are shown as not logged in when visiting certain pages. This was due to a page caching issue when you visited that page prior to logging in. I believe I have it fixed now. You will either need to clear your browser cache or visit each page that shows you logged out and hit refresh in your browser. I believe from that point forward you shouldn’t have to manually refresh any pages after logging in. Please report if you still encounter this problem. Thank you to everyone that reported this!
Just a quick note right now. I have instituted a policy of rotating session keys which means you’ve been automatically logged out. From this point forward we’ll rotate them monthly. So at least once a month you’ll have to re-authenticate. I apologize for any inconvenience this may cause you, but it was done in an effort to help secure the community, and help protect your account from session jacking attacks.
Alright. Not a lot to show anyone on the front end today, but big news on the back end! Quick update on the username anonymization: I’m still waiting on the web3 developer, so Soon™
On the backend I got the points transfer system finished up, I just need my homie to make a front end for it. It’s close. I’ve also completed the community moderation integration! Woohoo! What does that mean exactly? On the following objects, you have the ability to “report” that object. If that object gets enough reports it will automatically be suspended, held an administrator to review.
Here’s things you can report, and if enough people also report it for a similar reason, it will be moderated! Community moderation!
- Individual members profiles
- Individual Posts In Groups
- Forum posts
- Member blog posts
- User to user Private messages
Basically any interaction you can view on the website, you can report it! Reporting content you feel is harmful actually works! Lets say for example someone creates an account here and decides to start spamming every member that hasn’t changed their default settings… if enough of those users report it as “spam” that user will be automatically suspended until an Administrator overrides it. Power to the people! ✊🏻
I have gotten a few reports that people are not showing as logged in on some pages, even if they are logged in. Let me apologize for the trouble. Because of the rapid growth Caches has gone through over the last few months, the pages change often. Your browser will cache any pages you visit to save us both some bandwidth, so it’s likely you’re getting the old cached page if you visited it prior to logging in. So if you run into that problem for some reason, do a full refresh.
Firefox/Chrome & Chrome derivatives:
CTRL (CMD for Mac) + SHIFT + R to clear that pages cache and refresh the page. You should find you are logged in now. If you aren’t please let me know here or Reddit or Discord or at the email address on my profile page.
Just refresh. Sometimes you have to clear your cache … I’m not sure why. I’m working on figuring that out because who wants to clear their cache!?
Added a new page today so you can see all the public activity on the site. Consider it a master feed. This will show every public post on every subscribers timeline, any posts made to public groups, forum replies … everything marked public! Of course it’s sortable so you can find exactly what you’re looking for. So check out what’s up on caches rn? to see all the public activity on the site! Of course you have to be signed in to view that page, so if you haven’t … do that!
On another note, I have finished up some hooks that allow users to transfer points and awards between each other as well as allow users to exchange points types at a conversion rate, buy awards with money, and more. I hope that with some time I can make this into a system where you can award those points to a post, with the poster as the benefactor. Much like a reddit “gilding.” More gamification enhancements coming soon.
Still waiting on the web3 dev to complete the total anonymity package. Should be any day now. In the meantime waffles has been busy working the UI over. We decided to get rid of the side bar on the left as it seemed redundant. All of the options there can be access by clicking your username at the top right to access the drop down menu. Less clutter, faster access to the information you want.
Development marches on! BIG NEWS TODAY!
First, phase 1 of anonymizing usernames is now up and running! All username links on the site have been replaced by a random 16 character string! Check it out, hover over my username, or click it to view my profile. Look at the URL … cool huh? We are still shooting for next week for Phase 2 to be complete. Phase 1 anonymizes usernames on the front end, Phase 2 will anonymize them on the backend too… so you’ll be totally anonymous … even to me!
Next, and this is exciting! Group pages also got reformatted slightly so that the Project Manager isn’t squished into a small space. It also makes groups easier to
visually differentiate from user profiles. That’s not all! Regular, non EVM subscribers can now create one group! EVMs can create unlimited groups but now we’ve extended the ability for everyone to create one group! So go ahead and get your friends, or your web3 project, or whatever and get in here!
Last, in our never ending effort to give you, the subscriber, control over your content here at Caches, we added a new feature today. You can now close/open comments on your activity posts! That includes posts to your profile timeline and group posts. Just check out any post you’ve made on your Timeline or in a group. Next to the comment button will be a “close” button. You can close and open them at your own discretion!
Received some more updates from the upstream platform developer. Fixes listed below. @legendarywaffles has also been busy with some minor UI changes and an icon pack update … awhhh … that one is just for me. Web3 dev said she needed an extra week, so I’m now shooting for the 12th-14th for installing that update on the production server.
- Notifications – Handled Activity comment auto-generated notification incorrect text issue
- Forums – Handled small Forums widget issue shows wrong discussion count
- Activity – Handled activity comment @mention issue gets converted into HTML markup on post
- Media – Handled document upload double extension issue on document directory screen
- Media – Handled option gets enabled issue when activity settings updated
- Media – Small improvement to fix console JS error when video popup is closed
- Messages – Handled private messages right click and paste action issue, adds duplicate copies from the clipboard
- API – Handled get activity videos API endpoint issue
Not a lot new to report. The web3 authentication update was delayed. I’m waiting on a new ETA. In the meantime, I’m looking at adding some new features based on feedback.
Replaced CoinmarketCap API for Open Exchange API for all crypto pricing widgets. Pricing should be more up to date as well as quicker to load since we’re not waiting on CMC to respond.
Upvote/downvote mechanism has now been converted to a plus/minus system. It’s now at the top of every forum post, and every blog post on The Rostrum. So you can upvote and downvote to your hearts content! What’s cool too is this integrates with the rewards system here at Caches. So users can be awarded Duquets or just about anything else based on upvotes and downvotes. The same can be done for users that upvote and downvote as well. Pretty cool!
One last thing, uhm, so during some cleaning everyone’s display name got changed to all lowercase … heh … sorry about that. Of course you can change that back if you’d like. My bad!
Removed upvote/downvote mechanism for now. Needs a lot of work to integrate properly. Moved it to the “maybe later” stack.
Alright, we’re testing out something new here at the Caches forums. Upvotes and downvotes ala Reddit! Now you can upvote and downvote forum post replies. Coming in the future I’m going to try to integrate sorting posts & replies by the upvotes/downvotes. Please leave me feedback on whether you think this is a good idea or not! Thank you!
Boom! Log files encrypted. Temp files encrypted. Keys rotating daily. DB secured 100%!
Been a minute since my last update. Were you worried? Well some exciting news today! The database is finally encrypted! Well at least the important tables. The only thing left unencrypted was configuration tables for back end management scripts that don’t contain or access sensitive information. That means even if some leet hackers manage to breach my defenses, and root the server … they still won’t get your stuff. Backed by AES256 encryption, salted, hashed, smothered and covered! Even the keys themselves are encrypted!
There’s still more work to do there though, so tally forth I shall go. I still need to encrypt the log files, mysql temp files directory to ensure nothing leaks out anywhere. I also need to enable key rotation automatically instead of leaving up to each script to decide if they want to or not. Getting safer by the minute over here at Caches.
Busy busy busy! Before encrypting the DB next week I’ve decided to roll out the next … basically point release for Caches. Lets call it v0.02. This involves some great updates, fixes and optimizations from the upstream developer, and some front end fixes from @LegendaryWaffles to make it all look right. The list is … well, huge. So I’m just going to touch on the big parts here.
Platform Updates from upstream developers
- Forums – Handled forum reply notification wrong pagination URL issue
- Profiles – Handled other member’s profile sub-tabs taking to logged-in members profile tabs issue
- Profiles – Small improvement to show ‘See all’ for the ‘Recently Active Members’ widget
- Groups – Handled HTML tags not working issue for group description
- Groups – Handled Group videos not showing issues for non-logged-in members
- Groups – Handled ‘Enable Album in groups’ option not working issue
- Media – Handled issue for moving photos into album action and not creating separate activity
- Media – Handled upload/delete photos action not updating count issue in profile and directory page
- Media – Handled edit privacy dropdown issue on documents directory screen
- Messages – Handled messages thread UI issue when switching between multiple threads quickly
- Network Search – Handled search results not showing issue even when search string exists in repeater fieldsets value
- Network Search – Handled search results pagination issue for blog posts and pages
- Core – Small improvement to not close modal on discard draft for Activity, Forum discussion, and Forum replies
Platform updates from JBM
- Fixed: Zoom API add meeting/webinar performance issue by processing notifications in the background (still not fixed upstream!)
Front end/UI updates from LegendaryWaffles
- Fixed: A bunch of styling issues for platform updates
- Fixed: Cover block not showing full-width option issue
- Fixed: Mobile view dropdown issue for active menu items
- Fixed: Learning plugin quiz results not showing correct answers issue for incorrect input
- Fixed: Learning module issue where the incorrect labels and count may be shown
- Improvement: Reduce accidentally creating multiple discussions on double click
- Update: Updated styling for toolbars and pickers across all content types editor
Next round of version updates already in the works. Have a great weekend everyone.
Oh the joys of development. So my web3 auth updates won’t be finished in the next few days like I had originally thought. It’s for a good reason though! We’re adding some new features on the backend for me, like more granular NFT permissioning, and I can finally make that “Display Name” field a required one, and remove the email field. ETA now, end of month.
We’re working on getting database encryption going, so there may be some hiccups occasionally. I apologize for the bumpy ride but it’s for your health and safety. Next, even more goodies coming soon on the web3 front. After some back and forth with the web3 developer we decided that letting users choose their username from 3 options on first login:
- Use wallet address.
- Use randomly generated string.
- Enter your own username (as long as it’s not already taken)
So there you go. Fury, now all the power is yours friend! Once again Caches is giving you the power to choose what you want to publicly display, or not display. Go ahead, having a cheery public facing account for your project or business and another that says what you really feel. Don’t worry, even I won’t know who you are. 🙈
Caches now has full server level backup. Hourly, daily and weekly snapshots in rotation. This is replicated across a disk array stored in multiple datacenters across the US.
A few new additions today. First, I added a page called The Arena that shows all your favorite up to date cryptocurrency market info. All info is pulled from coinmarket cap. I don’t believe the information auto-updates so you will need to refresh to get the latest.
Next, Caches is now mobile friendly! You can log in using the built-in browser in the Metamask app for iPhone or Android! Finally, our mobile only fam can join us here on Caches. Most of the pages I tested rendered ok on mobile. If you have a problem or notice something out of wack, PM @CachesAdmin.
Last, if you haven’t had a chance to check out the learning module I installed, check it out! I have created a single course, with 2 simple lessons, 1 quiz and you get a certificate at the end if you pass. Keep in mind I threw together this course in less than 20 minutes as a demonstration. I hope EVM’s and others will create much more elaborate courses.
For @captain I’ve heard you loud and clear. I got with the web3 developer and they believe they have a solution to hide your wallet address as your username. More info to come soon.
Not much to report today. Hoping for some feedback from EVM’s about the learning stuff. I added a really cool ETH price widget to the homepage/dashboard you see when you log in. If you don’t see it, refresh the page. Also, tomorrow is Caches 1 month birthday! 🥳 Have a great weekend everyone.
RL is getting in the way of further development today. I hope to have some more time this afternoon. If I don’t, I should have a little time in the morning. My weekend is packed as well, so more than likely I will pick this up Monday again. The learning plugin is looking good on the development server but unfortunately I don’t have any content/courses/example lessons to show off. I’ve never taught anyone anything in a structured format so it’s mostly greek to me. I’m working through the help docs but it’s a lot for one person to try and learn how to integrate the software, learn how to create lesson plans, and then create ones that show off all the features. I was hoping EVMs would help here but it’s been mostly silent on that front. Maybe they’re scared of me now? I suppose the JBM brand is unstable. Either way, once I get this installed I will pitch it to them, if there isn’t much interest after that, I’ll rebrand and remarket. Either way, I learned a lot about Web3 wallet authentication and some new server/coding/database stuff that I can use in my own business. Exciting times ahead!
Zoom integration now added! You will need an API key, which you can get for free at the Zoom developer website. When asked, you want to create a JWT app. Groups can also create and schedule Zoom meetings from their group page. To configure it, group organizers just need to click the “Manage” tab on their group page. Then click the Zoom tab at the top of that page. There you can enter your API key. If you don’t want to get one, or don’t want to bother, send @CachesAdmin a message and I will enter the one I created for Caches. Of course, to keep me out of it, you can use your own API key as well. P2P baby, no middle men, no masters, that’s what Caches is about. Zoom meetings match the group privacy setting. So if your group is public, so will be your zoom meetings.
I knew this day would come. Unfortunately to properly market and optimize, I needed to add Google Analytics to the site. Don’t fret however! We have full GDRP compliance & IP address obfuscation enabled. Also … logged in users don’t get tracked at all! That’s right, once you’re logged in we stop tracking you. I think this is an acceptable balance as I do need metrics so I can properly market and optimize pages, but I don’t necessarily need to keep track of what users are doing. I hope everyone can understand the compromise.
BIG TIME privacy & security feature updates today. Everyone should pay attention here.
First, we have some new profile privacy options available in your account now, courtesy of @LegendaryWaffles . Click your username at the top right corner, then hover “Account” to reveal the menu, then click on “Privacy.” In there you should see a tab on the left hand side that says “Profile Visibility” where you can set the default options for all your items! Currently the default is set to “members only” meaning only people who have signed up with a web3 wallet. You can adjust each one individually. That reminds me. Did you know there’s a members directory here? I currently have that set so that only logged in users can view it, but you have full control in those account settings.
More infrastructure security upgrades courtesy of my in RL server wizard! HTTP/3(QUIC) is now available for those of you who want the ultimate in transportation layer speed & security between you and Caches!
Now that the blog is open to everyone, I made a KB How To guide for making your first blog post to The Rostrum. Be sure to read over that, and the rules below, then make your first post to The Rostrum! Totally anonymously, even to me!
After a conversation with an unnamed person on reddit, I believe the “evm blog” might be more effective if I let any subscriber post to it. So I’ve renamed it to “The Rostrum” and it is now open to all subscribers! Photos at the bottom of this post. There are some rules, and caveats however, so keep reading. First the rules. You all know I don’t like rules, so I will keep these to a minimum. All blog posts are held in moderation until I approve them. Now look, I don’t want to be a censor. Truly, so please help me out here and just follow these simple rules. You do that and I will allow you to pontificate on anything you want.
Blog Post Rules
- Keep it loosely tied in with web3 or Ethereum
- No hate speech, period. The end.
- No violence or inciting of violence, period. The end.
- No political speech, period. The end.
- No religious speech, period. The end.
- No spam. Obviously.
- Advertising your web3 projects is OK. Please keep the linking to a tasteful amount.
Next, I also plan to write a “SEO Best Practices” guide, which will be available in the Knowledgebase in the future, to help you get the most from the blog and maximize the traffic to your blog posts. Finally, please be sure your article is correct, and exactly how you want it before you hit the publish button. I will add tags your content and correct any obvious typos but I am not your editor. If you have very specific tags you are targeting then please PM me, @CachesAdmin after publishing and I will do my best to oblige within reason.
Man, you gotta love the helping hand of people you love. My dear friend @LegendaryWaffles re-did our entire front end. It basically looks the same but upon closer inspection you’ll find it’s more … better everywhere! Go ahead, check out your profile page by clicking on your username in the top right corner and selecting “profile.” Clean no? And what’s that … sortability for your timeline so you can find exactly the content from exactly the people you want with just a little click! Amazing! LegendaryWaffles your waffles aren’t the only thing that’s Legendary! Thank you! You are amazing and I don’t deserve you! ❤️
So everyone tell me what you think. Do you like it better? Is anyone actually reading any of this at all or am I just talking to myself in here?
I’m hitting a writers block today, just can’t seem to focus on help docs or news articles for whatever reason. I think instead I’m going to start plugging the translation code in on the test server and tinker a bit with that today. If it’s as easy as I anticipate I will probably start looking at the learning modules. I poked around a little to settle on one and it looks really great. A whole point and click, drag and drop front end for Instructors to create courses, lesson plans, tests, quizzes … you know all that stuff students hate. They can be written courses with images or video courses. You can even sell private one on one tutoring for whatever price you want! What really got me though was the integration with the gamification plugin. We can encourage and entice members to keep learning by awarding them with ranks, badges, awards, etc. Maybe those could even be redeemable for a free lesson or course? What’s cool is I can make this multi-instructor and each instructor can choose what they want to charge for their courses. ALL of these learning modules integrate with the platform as a whole so all the badges, awards, ranks, usernames, etc… transfer throughout the whole site. Course creators can even create a public forum for their course if they choose. You can even do “classroom” style lessons. Lots of options for members to make money here, just tie it into my very liberal interpretation of “related to web3.”
Ok, I think I’ve optimized as much as I possibly can right now without digging hard into code or putting images on a CDN. I did lay the ground work for CDN’ing later so it should be a few flips of a switch when it’s time (famous last words). I was able to get Page caching and OpCache integrated in to help reduce the load on the SQL server. I also tweaked some more SQL server settings which will should show some minor improvements.
I added another permission for uploads to user profiles. You can now have 4 privacy choices for photos, videos and documents.
- Public = these are visible to anyone, logged in or out. There is also a good chance these will be indexed by search engines and widely distributed across the internet. So you know … for real, PUBLIC.
- Only Members = only people signed up for and logged into Caches. So like … sorta public. Not visible to search engines/crawlers.
- Only Connections = Connections are basically your friends. The ones you accepted a connection request from. Stuff like that is just for the homies. Not visible to search engines.
- Only me = well basically what it sounds like. Just you can see it. Great for semi personal stuff that you want to reference, but don’t want anyone else to know you have, like that text file you saved with all of JBM’s raps.
I ran into a bug in the platform on the back end. It’s telling me that the server doesn’t have the video decoder installed to create and display video thumbnails. I uploaded a video to my @JBM profile and the thumbnail shows. In fact I can choose the thumbnail from several. No errors in the logs. Hmm, weird. I will have to get with the platform developer and see what that’s all about. I’m glad it defaulted to working instead of broken though.
Well I finished up my blog post on the NIST competition to create Quantum resistant encryption schemes. It’s not an overly long article but there are some great links and a little summary on the whole thing. I also created a How To in the Knowledgebase to help newbies install Metamask and create their first wallet to log in to Caches as well. I think I’m done for the day so I will update more tomorrow.
Ok, it looks like some more folks have jumped on board! Hey everyone! I decided to remove the classifieds and the job board. This is to focus the site’s mission per other peoples suggestions. I can always add them back in. I’m going to add the translation code on the back end as soon as I get some more content written. Speaking of which, I wrote a blog article today and started a how to.
In true one-man-army fashion I spent the evening optimizing & tweaking the server. We’re now running NGINX + Apache for maximum speed! I also tweaked the MySQL settings to keep more of the big work in RAM as well. Overall this should make for a snappier experience for everyone, especially those on slower connections like mobile networks. I also losslessly compressed all the images on site, and all your images will also be compressed automatically on upload! No worries artists! I’ve got your back, it’s lossless compression so you don’t lose any of those valuable little pixels. I also minified and combined all the css/js I could without breaking things. To throw the cherry on the top of this optimization I also got an OpCache up and running, server side gzip compression, and a page cache to reduce server calls. Things should be smoother overall now but I will continue to tweak as usage increases.
Ok, I decided to post this in the subreddit to see if I can get some more people to jump on board and just try it out and tell me what they think. There are a ton of odds, ends, testing, optimization and more to do but I need more folks poking around, clicking on stuff, telling me what’s not working right. I’m also considering letting non-EVM’s create groups. I didn’t want it to get too cluttered or have a lot of duplicate groups, but there are a lot of useful tools in groups. I’m thinking that earning that ability through contributions to caches may be the better solution. Opinions? I’ve also begun work on the public facing side which I think at this point is just going to be everything except the groups. Of course you have to log in to comment/react or post. That means for you users out there … pay special attention to your profile privacy settings as they will be visible to any passer by unless you change the permissions to “all members,” “only me” or “connections”
Alright! Got a lot more testers, some good feedback and some EVM’s to log in. Some people even found a few bugs. First, when you log in with a new wallet a popup appears asking for first name, last name, and display name. They’re all optional of course. The one field I would like, display name, doesn’t map properly to the “nickname” on the site. I will have to get with the web3 dev about this one, so it’ll probably be a few days. Just click on past it and set your “nickname” on your profile.
Next, thanks to some EVM’s logging in I discovered they weren’t getting assigned the proper EVM rank. The correct permissions were being applied but they didn’t get the cool badge. The problem was I failed to understand how the ranks work here and one has to be completed before the next one can be attained. No rank jumping soldier! SO! After some thought, EVM or not, everyone starts out as a bot. EVM’s will get to keep their special privileges and they get a little crown badge next to their name. Just here at caches, everyone starts out as a bot.
Browser push notifications enabled! It’s optional. If you block them, notifications will still appear in the browser window itself. I also got giphy animated gif support enabled as well! You can use animated gifs in profile posts, group posts and forum posts now.
Alright, got a few more people to try out the site and got some feedback, mostly positive, so that’s good! The web3 code seems to be working well and gating is also working well. I’m going to work on the login page and see if I can remove the email/pwd/signup thing and just have a big ass green button for web3 login. Also, check out the feature thread that I posted from my JBM EVM wallet account over here:
Other than site announcements and this thread I will be interacting with the community as plain ol’ JBM, EVM Lion #374.
I am going to freak out rn! The web3 authentication code is done, EVM’s get increased privileges automatically on login now! You can log in with any crypto wallet but if you log in with your EVM wallet you’re automatically upgraded so you can create forums, groups, knowledgebase articles and blog posts! Permissions may be a little wonky while I fine tune them but this is exciting news! I will be testing content gating soon. The functionality is there, just need to find the time to try it out.
Initial detection of ERC-721 token based on token contract was successful. Now its just a matter of mapping specific user types with different NFTs. Theoretically, caches could look completely different depending on what NFT you have in your login wallet. Different groups, different forums, different blog posts, a different website with different information! Each of those people may not even be aware the other caches even exists! Spooky eh? Multi-dimensional web3 development. That’s what we’re bringing here at caches.
Removed several awards and points. I don’t believe they are necessary at this point. Instead we have 1 point system called “duquets” for now. You will be awarded duquets for certain actions on site. Still working out a plan as to what duquets will be worth.
Web3 Authentication developer hit a speed bump so we’ve been delayed slightly. No worries. Today I made the “cacheboard” a little prettier for everyone. If there is more data you’d like to see there let me know.
Caches is ready for public consumption. Waiting on Web3 Authentication plugin developer to complete before public launch.
Project manager added to groups. Group organizers and moderators can create projects for their teams.
- Create unlimited projects
- Create unlimited tasks
- Create automated recurring tasks
- Set milestones, due dates, etc
- Create Kanban Boards
- Create Gannt Charts
- Attach files to project/project file repository
- Assign tasks to specific members
- Invoice creation
- Invoice payment through Paypal API hook
Front end blog editing for EVM’s complete. EVM’s can now create blog posts from their profile. Select the EVM Blog tab on your profile page to manage your posts and create new posts. Currently these will be set as a draft when you publish. I will manually approve them just to ensure my front end editor code is working correctly. Once I’m sure its working right I will set it to publish immediately without oversight.
Initial web3 wallet login code installed! Wallet login works with metamask. Developer is working on setting permissions based on NFT contracts. This will allow me to automatically give EVM holders (or any token really) certain privileges or access automatically. Theoretically, and I hope I can make this happen, I could give Administrative privileges based on a users token, essentially creating Caches DAO and giving the community back to the community. Way off anyway. Exciting!
Gamification plugin installed. Created ranks 1-10 for non-EVM users, and ranks 1-3 for EVM’s. Currently the plugin provides for Awards as well as “points” like the “duqets, jewels and gilds” here. I haven’t quite decided what to do with those points, how to award them or anything yet. It does allow for me to create QR coupon codes to give away as well as some other options. This is something I will work on because its fun and I like fun stuff. I believe for now I will focus on the ranking system to allow non-EVM members the ability to get EVM level privileges like creating groups and forums. Ideally I would like “duquets” to have some ratio to ETH/wETH that users can “cash in” their duqets for. I’m open to all suggestions here.
Classifieds system installed. Beware this is totally P2P. I have no control over these listings or transactions. So for now, only EVM’s can post new classifieds ads. Eventually I may use the gamification plugin’s ranking system [above] to give privileges to other users. This also allows for quite a bit of expansion including adding a tab to manage your listings and purchases on your profile page.
Group and personal document storage and photo storage is now complete. Photos or videos that are attached to members posts are automatically saved under the documents tab, with proper permissions applied (same as post). You can create photo or video albums using their respective tabs. You can set individual file permissions to public or private. Currently there is no space limitation, but please be gentle until we get to cruising altitude. Don’t start backing up your movie collection here. Uploads are limited to a maximum of 512mb and 10 at a time.
Job manager installed. Create job listings from the front end. This may morph into “find team members” as well. Because some jobs don’t pay right now, but you do them because you love the work. If this is used more frequently I will expand it further with indeed integration, jobs tab in profiles for job seekers and recruiters to manage it.
Theme is installed and configured mostly to my liking now. The defaults were for the most part acceptable. I did change the left “quick access” bar to black. I may change it back to white, haven’t decided.
CMS installed & secured.
Platform and host research completed. So begins caches.
- This discussion was modified 5 days, 12 hours ago by CachesAdmin.
- This discussion was modified 1 day, 10 hours ago by CachesAdmin.