1
1
mirror of https://github.com/aelve/guide.git synced 2024-12-18 10:21:41 +03:00
Commit Graph

486 Commits

Author SHA1 Message Date
Aaron Friel
4aa3f21544 Switch h3 to strong, aesthetic change to banner 2017-01-29 16:53:50 -06:00
Aaron Friel
52fa345836 Add category status banner for WIP/stub categories 2017-01-29 16:39:05 -06:00
Artyom
ee0610b396
Add “Guide.” to all modules
Nowadays lots of libraries don't use hierarchical modules so let's avoid
clashes with them.
2017-01-27 03:18:18 +03:00
Artyom
20ae435ffc Remove unused (so far) admin-css widget 2016-08-17 23:18:53 +03:00
Artyom
c72815c436 Big switch to Mustache (only half-done)
* Render some elements of some pages with Mustache
* Switch to Stack
* Add a bit of tests
* Turn the project into a library
2016-08-17 11:18:57 +03:00
Artyom
dd4468c772 Add Derive* extensions to default extensions 2016-07-30 17:36:20 +03:00
Artyom
b8af96eb06 Get rid of “-- General” in imports 2016-07-30 17:35:00 +03:00
Artyom
752864fc30 Switch to Megaparsec 5 2016-07-27 16:31:55 +03:00
Artyom
dd6b38f742 Focus on text fields when editing 2016-07-27 15:34:29 +03:00
Artyom
2401666946 Allow Escape to cancel editing 2016-07-27 15:05:53 +03:00
Artyom
adc73b6fd2 Fix 'cached' 2016-07-25 20:12:08 +03:00
Artyom
699b07687a Get rid of MonadRandom 2016-07-25 19:47:49 +03:00
Artyom
e810f1997d Migrate to newer versions 2016-07-25 17:55:10 +03:00
Artyom
519211ac2e Move from cheapskate to cmark 2016-07-24 13:12:17 +03:00
Artyom
8c51a779ec Allow Command+Enter to edit fields 2016-07-23 02:33:51 +03:00
Artyom
da7d4a75cb Allow Ctrl+Enter in small edit fields 2016-07-21 22:24:06 +03:00
Artyom
a0fb2bb3c2 Allow Ctrl+Enter to save multiline fields 2016-07-21 22:15:33 +03:00
Artyom
60beb00905 Rename 'empty' to 'wasEmpty' 2016-07-21 21:00:46 +03:00
Artyom
83951b0083 Add a “press Enter” hint to edit fields
See #93
2016-07-21 20:46:16 +03:00
Artyom
aaa56aabee Add default extensions 2016-07-21 18:57:14 +03:00
Artyom
364f792175 Empty the cache at start 2016-07-21 16:26:08 +03:00
Artyom
194f0063be Add a subtitle to the header 2016-07-10 23:34:13 +03:00
Artyom
1a0222c2d2 Link to items/categories in admin interface 2016-07-06 23:50:02 +03:00
Artyom
1521a3e64c Bump microlens dependency 2016-07-03 23:07:09 +03:00
Artyom
3249076608 Merging for category notes 2016-06-20 15:00:00 +03:00
Artyom
c2dcaa81a8 Merging for item descriptions 2016-06-20 14:18:00 +03:00
Artyom
55258979b8 Merging for ecosystem fields 2016-06-20 13:13:09 +03:00
Artyom
8f4d2dd417 Merging for item notes 2016-06-19 19:20:28 +03:00
Artyom
ccb8693a97 Implement merging for traits 2016-06-19 00:52:19 +03:00
Artyom
57afee3b64 Use ilist and text-all 2016-06-12 22:35:13 +03:00
Artyom
4b363d035d Use exhaustive patterns in isVacuousEdit 2016-06-12 15:31:34 +03:00
Artyom
0a924595ea More dots 2016-05-27 17:19:29 +03:00
Artyom
18f6be8b0c Remove “.min” from JS file names
Reason: data-files in .cabal doesn't think that *.js
includes *.min.js. That's pretty annoying.
2016-05-27 17:15:51 +03:00
Artyom
412d3611c8 Nicer listing of edits 2016-05-25 23:57:12 +03:00
Artyom
e1a6245afc Allow hiding ecosystem/pros/cons 2016-05-22 14:43:46 +03:00
Artyom
417485ab50 Only create a checkpoint when there were changes 2016-05-21 16:52:23 +03:00
Artyom
b123a7df07 Create checkpoints once in 6h, not once in 1h 2016-05-21 15:44:31 +03:00
Artyom
a6292ef064 Say how many different IPs there are 2016-05-14 01:33:14 +03:00
Artyom
5d7332bf51 Make trait-controls more mobile-friendly 2016-05-14 01:27:02 +03:00
Artyom
5a53f37541 Add pencil buttons to pros/cons 2016-05-13 02:02:16 +03:00
Artyom
e7b0c3ddb2 Get rid of non-monospace editing
It was actually pretty annoying
2016-05-11 04:13:13 +03:00
Artyom
d5b6a72a35 Don't use “shortcut icon” 2016-05-11 01:53:38 +03:00
Artyom
095cb507b7 Add a favicon 2016-05-10 23:44:20 +03:00
Artyom
fdaba16282 Change titles 2016-05-10 03:45:20 +03:00
Artyom
896d39ff89 Fix buggy paths in feeds 2016-05-10 03:31:39 +03:00
Artyom
7e128292d3 Remove the temporary ActionDetails migration 2016-05-08 16:35:38 +03:00
Artyom
dccfb36456 Nicer stats, only external referers 2016-05-08 16:29:07 +03:00
Artyom
38f234ca84 Add a “mostly done” status
Fixes #52
2016-05-07 15:38:44 +03:00
Artyom
864cfd838a Fix slug function
Fixes #54
2016-05-06 23:03:21 +03:00
Artyom
5928849ab9 Remove some TODOs 2016-05-06 01:04:20 +03:00
Artyom
1d08039cf2 Relicense under CC 4.0
And allow attribution without names (since names are unknown).
2016-05-05 23:11:08 +03:00
Artyom
a439dffcf6 Add category statuses
Fixes #38
2016-05-05 16:50:10 +03:00
Artyom
66e8a42ac5 Calculate visits correctly 2016-05-05 02:53:41 +03:00
Artyom
bf10fa4036 Add support for Google site verification 2016-05-04 21:18:18 +03:00
Artyom
38560dd012 Implement our own tracking 2016-05-04 21:03:23 +03:00
Artyom
607c4bd8fd Minor 2016-05-03 03:30:29 +03:00
Artyom
d778b55fbe Make the footer nicer 2016-05-03 03:27:30 +03:00
Artyom
92d8c53776 Remove help 2016-05-02 21:44:50 +03:00
Artyom
2c6046b08f Link to Markdown everywhere 2016-05-02 21:27:49 +03:00
Artyom
393b4a1b19 Move license info to the footer 2016-05-02 18:37:13 +03:00
Artyom
53e1a465e3 Prerender pages
Fixes #26
2016-05-02 17:54:34 +03:00
Artyom
71d58fc436 Remove the link nonsense
Fixes #34
2016-05-02 16:54:35 +03:00
Artyom
cad27df2c4 Use BS instead of Builder for rendered Markdown
I'm not sure that forcing a Builder has any effect, so it might end up
recomputing stuff more often than we want.
2016-05-02 16:43:41 +03:00
Artyom
6a6bc254cb Link to the note 2016-05-02 01:45:04 +03:00
Artyom
db57156b1b Category groups 2016-05-01 23:17:55 +03:00
Artyom
f560f461d2 Add caching
Fixes #21
2016-05-01 16:28:10 +03:00
Artyom
a3c7f896c5 Fix headers 2016-04-24 23:53:00 +03:00
Artyom
7729115472 Add padding to the whole thing 2016-04-23 19:30:43 +03:00
Artyom
de1bf14d67 Arrange pros/cons one below the other on mobile 2016-04-23 18:12:10 +03:00
Artyom
93da2d0444 Add a note about dynamic interfaces
Fixes #27
2016-04-22 16:59:50 +03:00
Artyom
60d3cd2615 Make item descriptions a section as well 2016-04-22 16:39:22 +03:00
Artyom
d7e4334d2e Make the “edit ecosystem” icon a toggle 2016-04-22 16:22:46 +03:00
Artyom
7f8275b248 Add a link to notes
Fixes #19
2016-04-22 16:18:58 +03:00
Artyom
e279786b55 When deleting categories, redirect to main page 2016-04-22 01:26:45 +03:00
Artyom
dc2fc3d8e0 Remove outdated TODOs 2016-04-22 01:22:51 +03:00
Artyom
f8cee78ac0 Linkable sections in item notes
Fixes #19
2016-04-22 01:06:02 +03:00
Artyom
d8ddc2305a Don't hide TOC when notes are expanded
Fixes #31
2016-04-21 19:40:00 +03:00
Artyom
77cdb3c1ef Make headers-in-notes smaller
Fixes #33
2016-04-21 19:28:35 +03:00
Artyom
6483e2fb8e Compare case-insensitively when adding a category 2016-04-21 18:28:03 +03:00
Artyom
9c82a6dbab Add CSS for category lists 2016-04-21 18:19:38 +03:00
Artyom
62ccc5c04e Only show lists of categories
Fixes #8
2016-04-21 18:10:58 +03:00
Artyom
ba8e36574e Add search to category pages 2016-04-21 17:01:54 +03:00
Artyom
91da7809d8 Use MonadRandom instead of MonadIO in some places 2016-04-21 16:49:01 +03:00
Artyom
8f5dfe5e9a When a new group is created, add it to other items
Fixes #32
2016-04-20 23:16:05 +03:00
Artyom
ecc18fe0db Expand notes when linked directly to item 2016-04-20 21:24:04 +03:00
Artyom
d43aa8137f Expand notes when linked directly to them
See #19
2016-04-20 01:59:29 +03:00
Artyom
5efa203e21 Fix events in Firefox 2016-04-19 23:09:39 +03:00
Artyom
41230596bf Create some <textarea>s dynamically
Makes it quite a bit faster on Firefox (see #24)
2016-04-19 20:03:54 +03:00
Artyom
e0ff916eea Add an AJAX request indicator
Fixes #18
2016-04-16 23:06:59 +03:00
Artyom
1e1e8b43eb Add more colors for groups
Fixes #17
2016-04-16 21:47:38 +03:00
Artyom
63301eb330 Allow raw HTML in inline Markdown because why not 2016-04-16 02:08:31 +03:00
Artyom
43bb1f3a6f Show table of contents for notes 2016-04-16 02:02:43 +03:00
Artyom
0379f53938 [admin] Button to create a checkpoint 2016-04-16 00:06:34 +03:00
Artyom
044964bbf5 Make the search page link to the main page 2016-04-15 23:44:55 +03:00
Artyom
2882957b6a Move some TODOs on Github 2016-04-15 23:42:29 +03:00
Artyom
a467d49823 Add a template for category notes 2016-04-15 16:15:02 +03:00
Artyom
35b6a469f6 Undo/accept for blocks of edits 2016-04-15 14:19:36 +03:00
Artyom
7925807c02 Add some styling to the admin page 2016-04-14 01:56:13 +03:00
Artyom
a025db8d9b Group edits by IP 2016-04-13 18:38:35 +03:00
Artyom
a029f06ea1 Don't duplicate trait content 2016-04-11 23:31:30 +03:00
Artyom
f0d67cbb75 Use deriveSafeCopySimple as workaround for a bug
See https://github.com/acid-state/safecopy/issues/41
2016-04-11 16:05:45 +03:00
Artyom
252e73c8c2 Use fadeOutAndRemove 2016-04-10 23:44:55 +03:00
Artyom
8013ebbfb1 Add Show instances to all types 2016-04-09 23:34:24 +03:00
Artyom
b29b3b2c7f Migrate Uids too 2016-04-09 18:54:34 +03:00
Artyom
8bf99b069b Only show 2 sets of buttons when there are notes 2016-04-09 16:54:32 +03:00
Artyom
7ad80160f8 Use safer Uids 2016-04-09 11:13:26 +03:00
Artyom
f78434f2d1 Use Markdown CSS on the admin page as well 2016-04-09 03:36:38 +03:00
Artyom
e9e79ef095 Get rid of a common “get Uid and compare” pattern 2016-04-09 03:30:04 +03:00
Artyom
e04517b374 Silly bug 2016-04-08 23:43:43 +03:00
Artyom
2aaeb4711b Throw an error when the IP couldn't be parsed 2016-04-08 23:40:09 +03:00
Artyom
f8c5f5c6b7 Parse the X-Forwarded-For request header
guide.aelve.com currently runs behind Apache (as reverse proxy), which
means that all client addresses seem to be 127.0.0.0. This fixes that.
2016-04-08 23:28:54 +03:00
Artyom
b9af03f55e Switch to the IP type from iproute
It gives us a Read instance by default!
2016-04-08 23:11:13 +03:00
Artyom
710af0ea2c Minor 2016-04-08 18:39:22 +03:00
Artyom
5c64b2f36b [Travis] Test loading the official database 2016-04-08 18:33:33 +03:00
Artyom
60bbc6d71f Allow undoing edits 2016-04-08 18:05:52 +03:00
Artyom
5e7ce95f43 Show edits better on the admin page 2016-04-07 22:14:08 +03:00
Artyom
6f3853c944 Don't use categoryByItem, it leads to errors
E.g. when you're doing something like

    let category = categoryByItem item

and then you delete the item – the “category” lens silently stops
working as well, because lenses aren't exactly pointers.
2016-04-07 18:35:04 +03:00
Artyom
358c8c769f Add error messages for *ById lenses 2016-04-07 18:07:04 +03:00
Artyom
5827fb5b1a Add category deletion 2016-04-07 18:03:48 +03:00
Artyom
1138781926 Add TH functions to make migrations less painful 2016-04-07 18:03:38 +03:00
Artyom
0d63865b7f Only delete/etc things after the request finishes 2016-04-06 02:04:22 +03:00
Artyom
025491beba Include scripts locally
This should actually be faster because then the browser wouldn't have to
additionally resolve CDNJS (and also now the site can be tested without
internet connection).
2016-04-06 01:51:50 +03:00
Artyom
4e0169bf4d Minor 2016-04-06 01:36:55 +03:00
Artyom
1de64e1a6e Keep track of edits 2016-04-03 23:57:01 +03:00
Artyom
c408b8b08d Add a note about acid-state 2016-03-28 23:52:51 +03:00
Artyom
e4555d0da3 Write a note about show/hide 2016-03-27 02:34:29 +03:00
Artyom
ee6ba3e6d6 Don't do anything if the item itself doesn't exist 2016-03-25 00:26:10 +03:00
Artyom
3d46a83c02 Fix stupid bug (forgot to delete lines) 2016-03-25 00:25:21 +03:00
Artyom
59c8640d69 Remove character counting
It was useless really.
2016-03-24 22:20:25 +03:00
Artyom
58914a822b Add fields for deleted pros and cons 2016-03-24 21:16:14 +03:00
Artyom
b8d64fde61 Delete old ItemKind migration 2016-03-24 21:11:56 +03:00
Artyom
0b0e88044d Add a field for deleted items 2016-03-24 20:55:17 +03:00
Artyom
f3a88fd695 Add a field for deleted categories 2016-03-24 20:32:42 +03:00
Artyom
29646d580e Allow setting text editor to monospace 2016-03-24 03:02:09 +03:00
Artyom
96eea1265d Use wrapPage everywhere + sticky footer 2016-03-23 18:53:34 +03:00
Artyom
99150cae13 Catch Javascript errors 2016-03-23 12:22:14 +03:00
Artyom
652e28e585 Add an admin page (no content yet) 2016-03-23 01:54:59 +03:00
Artyom
93b3398c3b Update config after reading it 2016-03-22 23:09:05 +03:00
Artyom
e8f6d26d9f Minor 2016-03-22 22:39:04 +03:00
Artyom
e48d13d2a8 Add captions to images 2016-03-22 20:20:34 +03:00
Artyom
df3c55e823 Add feed icons 2016-03-22 20:19:05 +03:00
Artyom
72ad74a431 Use config instead of environment variables 2016-03-22 01:17:53 +03:00
Artyom
9b778967a4 Minor 2016-03-21 02:12:03 +03:00
Artyom
d8fe43b2c7 Blink when things are removed/moved 2016-03-20 16:41:32 +03:00
Artyom
406ae18116 Remove some TODOs 2016-03-20 15:44:33 +03:00
Artyom
e21e58aede Add help to category pages 2016-03-20 14:11:42 +03:00
Artyom
8d68933137 Add another “hide help” link 2016-03-20 14:08:26 +03:00
Artyom
aa6efe9d9a Add the “unwritten rules” page 2016-03-20 13:50:23 +03:00
Artyom
7cb7a79660 Add anchor links to items 2016-03-20 13:30:10 +03:00
Artyom
c81fa12305 Add a link to the main page on category pages 2016-03-20 03:15:55 +03:00
Artyom
eb0e13b94e Move everything to the “/haskell” subpath 2016-03-20 02:36:16 +03:00
Artyom
7d2f3594b6 Add feeds for items in categories 2016-03-19 21:36:21 +03:00
Artyom
f01c360b83 Move Lucid/Spock integration into another package 2016-03-19 18:29:58 +03:00
Artyom
8e294895ac Reverse the order in the title 2016-03-19 14:34:53 +03:00
Artyom
53025ef9ad Set a 1MB limit on requests 2016-03-19 14:34:53 +03:00
Artyom
5cff313a2e Fix ugliness in Chrome
Now there's different ugliness!

Ref. #9
2016-03-19 03:55:31 +03:00
Artyom
e1e74d23e4 Add a method to set global state 2016-03-19 02:52:44 +03:00
Artyom
c8b177b127 Add pages for categories 2016-03-19 02:40:00 +03:00
Artyom
7400bfa819 Generate alphanumeric Uids 2016-03-19 00:08:08 +03:00
Artyom
c268d91927 Don't generate small Uids 2016-03-18 23:45:18 +03:00
Artyom
95d710eaee Record creation time of items/categories 2016-03-18 21:32:33 +03:00
Artyom
96a4d59b29 Add “hk” as a synonym for “hackage” 2016-03-17 18:05:38 +03:00
Artyom
caa2af17f8 Allow Markdown blocks in the ecosystem field 2016-03-17 15:29:45 +03:00
Artyom
de88d2686c Put ecosystem before notes 2016-03-17 14:58:44 +03:00
Artyom
6f6a161abc Don't say “write something here” for ecosystem 2016-03-17 14:52:32 +03:00
Artyom
f116663b29 Recolor items in a less ugly way 2016-03-17 03:35:56 +03:00
Artyom
9b38dc68c0 Rename the thing 2016-03-17 03:22:46 +03:00
Artyom
def6c4db0a Change the style of pros/cons a bit 2016-03-17 03:02:51 +03:00
Artyom
43c3214d54 Add an “ecosystem” field 2016-03-17 03:02:11 +03:00
Artyom
f1cdd51536 Move the donations page to a file in static/ 2016-03-17 01:02:56 +03:00
Artyom
84454d2666 Add an environment variable to enable tracking 2016-03-16 23:47:59 +03:00
Artyom
efbd7716bb Don't use the tracking image at all 2016-03-16 15:52:58 +03:00
Artyom
5bee1ad9e8 HTML validity fix: don't use thisNode inside <ul> 2016-03-16 15:46:29 +03:00
Artyom
46c02b7ef2 Fix text length counting 2016-03-16 02:56:09 +03:00
Artyom
74be29738e Prerender Markdown
Makes page rendering about twice as fast
2016-03-16 02:17:08 +03:00
Artyom
ad95f9d94c Get rid of sample state 2016-03-16 02:10:58 +03:00
Artyom
63c707fc5b Minor 2016-03-16 00:59:00 +03:00
Artyom
61be3b5a2e Minor 2016-03-16 00:14:22 +03:00
Artyom
2504b6c969 Switch the order of “edit notes” and “hide notes” 2016-03-15 15:41:09 +03:00
Artyom
9a1dfec816 Split rendering into its own module 2016-03-15 15:35:35 +03:00
Artyom
6c94fc5231 Move blazeToHtml into another package 2016-03-15 14:20:06 +03:00
Artyom
993e33d154 Move JQuerySelector into JS.hs 2016-03-15 13:10:47 +03:00
Artyom
46ace5f57a Kill the EKG server thread upon exit 2016-03-15 13:03:05 +03:00
Artyom
401329d851 Write about Markdown in help 2016-03-15 03:29:18 +03:00
Artyom
da90a3f270 Add highlighting for the “repl” class
As well as fix the overflow thing that was adding extra space at the top
of every code block.
2016-03-15 03:11:46 +03:00
Artyom
32c3083eb9 Get rid of a renundant (now) dependency 2016-03-15 02:50:45 +03:00
Artyom
7b588e7c6e Move highlighting into a separate library 2016-03-15 02:48:30 +03:00
Artyom
1392ecd785 Add code highlighting 2016-03-15 00:09:39 +03:00
Artyom
0a2788059c Only collect stats every minute 2016-03-14 23:30:06 +03:00
Artyom
ddb4182603 Write about the status page 2016-03-14 22:13:57 +03:00
Artyom
4d579832a3 Add monitoring 2016-03-14 21:51:34 +03:00
Artyom
414a3b150b Allow the name and the Hackage name to differ 2016-03-14 17:09:05 +03:00
Artyom
e9e2a6ed1f Finally fix the bug Firefox has with saving fields
It's not It's All Text!'s fault, it's Firefox's fault – it saves input
values, and in our case it does it wrong sometimes, so you could start
editing details of item A and the “name” field would be from item B.
2016-03-14 16:32:17 +03:00
Artyom
67fbb610c2 Let kind be edited 2016-03-14 16:13:38 +03:00
Artyom
5882205c8e Create a kind for tools 2016-03-14 13:58:45 +03:00
Artyom
49b522c337 Render links without “(site)” for non-libraries 2016-03-13 20:28:51 +03:00
Artyom
35561aaae8 Guess whether new items are libraries or not 2016-03-13 20:21:50 +03:00
Artyom
63e808155e Implement search properly (with page-reload) 2016-03-13 02:35:50 +03:00
Artyom
506881e2e1 It's All Text! strikes again
Have to use scripts with all textareas to avoid It's All Text! filling
them with outdated data.
2016-03-13 01:29:02 +03:00
Artyom
09957c4c39 Simplify deletion confirmation dialogs 2016-03-12 20:06:24 +03:00