This repository contains the source code for PhantomWatson.com.
phantomwatson / ether Goto Github PK
View Code? Open in Web Editor NEWCodebase for Ether, an online thought repository
Home Page: https://theEther.com
Codebase for Ether, an online thought repository
Home Page: https://theEther.com
This repository contains the source code for PhantomWatson.com.
From @PhantomWatson on September 17, 2014 7:59
Right now, it looks like search results all get sent to http://theether.com/thoughts/word. They should redirect to /t/searchterm
Copied from original issue: #18
From @PhantomWatson on December 10, 2013 22:38
A script could be written that scans through thoughts to find questions. A big page with a list of all questions ever asked on Ether could be generated for the wonderful fuck of it.
Copied from original issue: #5
From @PhantomWatson on November 27, 2013 4:30
Test loading something via AJAX that the user is not currently authorized to access.
Copied from original issue: #4
'long'
cache configuration is missing, but used in the code.
This cache configuration is used for storing unpopulated thoughtwords, but a cron job is (awkwardly) used to refresh this value weekly. Unpopulated thoughtwords should probably be cached daily and refreshed daily, and with a command, rather than a request to /thoughts/suggested.json
.
Display entropy score as a slider instead of as a numerical value
Randomness: [===||=========]
Maybe move entropy score out of the "thinkin'" box, to the right of the "results:" header
Change "block length" and 1-5 numerical options to "randomness" and these choices:
Change "words per second" to "speed" with these choices:
Change "limit" to "automatically stop" with these choices
Improve "thinkin'" section
Remove "this is a work in progress" text
Put all controls in a single row
Provide a short introduction, then a button that reveals a more detailed introduction
From @PhantomWatson on November 12, 2013 3:52
Copied from original issue: #1
app.php
configuration data into app.local.php
so that app.php
can be overwritten from skeleton app repositoryFrom @PhantomWatson on February 20, 2014 21:13
Any current AJAX request that displays the loading indicator and creates a popup should be able to be canceled with the Esc key.
Once there are keyboard commands like this working, there should be a page or a popup that explains what they are.
Copied from original issue: #13
From @PhantomWatson on February 1, 2014 0:48
From request to request, the cloud of thoughtwords has its order changed slightly, noticeably with the placement of words that begin with digits. Fuck if I know why. The website is probably being developed on an ancient Native American burial domain and I'll have to call in an exorcist.
Copied from original issue: #12
From @PhantomWatson on March 3, 2014 23:48
I didn't know what else to call this.
On the front page (or whenever the cloud of thoughtwords is visible), typing into the search box could result in the visible words being narrowed down to only those that contain the typed string.
As words get filtered in and out, a minor animation would look nice. Transitioning the width and opacity to zero might look best.
Copied from original issue: #17
Line graph of
over time
From @PhantomWatson on January 26, 2014 0:53
A daily cron job can prune accounts that are > X days old and have had no activity (no messages sent, no comments, no thoughts).
Copied from original issue: #11
Consider using https://xkcd.com/color/rgb/ to name matched colors on a user's profile page, e.g. "According to the XKCD color survey, this color is $colorName
".
For colors that don't match, the closest match within a certain threshold is chosen instead. "...this color is closest to $colorName
".
If there are no matches within the threshold, no such line is displayed.
It would be nice to have same buttons available in the thought form that are in the GitHub issue form, which wrap selected text with markdown and insert list-item or blockquote opening code. That way, writers would be able to take advantage of these features without having to read the markdown styling guide.
Bonus points: Also replicate Ctrl+I and Ctrl+B keystroke functionality
From @PhantomWatson on January 22, 2014 1:7
Under 'my account', the user's default choice for 'enable comments' and 'post anonymously' should be selectable and integrated into the preprocessing of /thoughts/add.
Copied from original issue: #10
From @PhantomWatson on January 3, 2014 2:42
Instead of placing popups at the top of the page or at the headers of /thoughts/index and scrolling to them, just place them at whatever position the page is currently scrolled to.
Copied from original issue: #8
The page for adding/editing a thought should have a markdown guide that can be revealed in-place instead of available on a separate page via a link.
From @PhantomWatson on February 24, 2014 1:47
Copied from original issue: #14
Currently, after posting a thought anonymously, a thinker cannot respond to comments anonymously.
Option 1
All comments by the author of the corresponding thought are anonymous if the thought was posted anonymously (so the comments switch from anonymous to... uh... nonymous when the user edits the thought and toggles the 'anonymous' flag)
Option 2
Because the author may not want to comment anonymously (and their inability to comment with their color exposed under their own anonymous thought could possibly hint at their identity), give thinkers the 'anonymous?' option for any comments they post under their own thoughts that are currently marked anonymous.
anonymous
boolean field addedFrom @PhantomWatson on February 24, 2014 1:50
Copied from original issue: #15
From @PhantomWatson on December 26, 2013 8:59
getSuggestedThoughtwords()
The contents of all thoughts are scanned and words with no associated thoughts are pulled out. Random words are chosen, weighed in favor of more frequently-used words.
Example: On the homepage and on the 'post a new thought' page (assuming thoughtword has not yet been chosen), display a line like: "No one has posted thoughts about [heartache], [attention], or [fix] yet." Suggested thoughtwords are linked and clicking on them takes you to the thought-posting form with the thoughtword field already filled out.
This should give users convenient prompts for new thoughts and help increase the number of linked thoughtwords in thoughts. Because why not.
Copied from original issue: #7
Provide a live preview of a thought as it's being written, updated every second if its content has changed by a call to what's effectively an API endpoint. If for some reason a live preview is troublesome (maybe because response time from the server is slow), there could be separate tabs for "write" and "preview", like the GitHub issues form.
This should help people out with markdown and the weird way that markdown handles line breaks.
From @PhantomWatson on December 22, 2013 1:28
Currently, the footer gets obscured if #overlaid is taller than #content_outer. This can be fixed by using JS to manually set the height of #content_outer to the height of #overlaid if this is the case when a new popup is opened or after a page with the over_cloud layout is loaded.
Copied from original issue: #6
The "put two spaces at the end of a line if you want to follow it with a single line break" markdown rule is not intuitive for most writers, and failure to understand this rule results in line breaks not appearing (which can really fuck up poetry).
If this rule were replaced with a simple nl2br()
alternative, it wouldn't be a breaking change for existing thoughts.
A better solution to this would be to replace plain markdown editing with a markdown-compliant rich text editor. ToastUI Editor looks like a good option.
Will probably require something like a CommentNotifier
model/table.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.