567 Commits (8df158aa6f9bb0ac113c958abbb44e7f8c853ea1)

Author SHA1 Message Date
Eugen Rochko df2f14d2dd Adding remote follow button
8 years ago
Eugen Rochko bef225e5da Add illustration to getting started column
8 years ago
Eugen Rochko 35f3b6bbf6 Only display follow requests link in getting started window if account is locked
8 years ago
Eugen Rochko cef68b9b1c Follow requests send e-mail notifications, but are excluded from notifications API
8 years ago
Eugen Rochko 6a54df90c8 Replacing follow requests in the settings area with in-UI column
8 years ago
Eugen Rochko 4afc13868b Fix #357 - Also make textarea blur close suggestions which make it more accessible on touch devices
8 years ago
Eugen Rochko d25168bc1e Fix #367 - Lock icon instead of retweet icon on boost button on private statuses
8 years ago
Eugen Rochko 1d40662609 Hide unlisted toggle when private is active, hide nsfw toggle when no files added
8 years ago
Anthony Bellew dfc95491f1 Re-add unlisted toggle to the UI
8 years ago
Eugen Rochko cec209dbad Fix confirmation email being sent to old address when changing it
8 years ago
Eugen Rochko 4839ab3998 Compose form in the UI now has public/private toggle instead of public/unlisted
8 years ago
Eugen Rochko 302051ffcb Add page for authorizing/rejecting follow requests
8 years ago
Eugen Rochko 238233440f Follow call on locked account creates follow request instead
8 years ago
Eugen Rochko 11e2159859 Merge branch 'master' into development
8 years ago
Eugen Rochko bb74b9787a Fix notifications reducer bug
8 years ago
Eugen Rochko d417da7d3a Private visibility on statuses prevents non-followers from seeing those
8 years ago
Eugen 4bfaca1470 Merge pull request #356 from victorhck/master
8 years ago
victorhck b254629157 added to missings spanish translations
8 years ago
Eugen Rochko 001fee6bd5 Fix key up listener on compose form
8 years ago
Eugen Rochko d088b3cade Re-implemented autosuggestions component for the compose form
8 years ago
Eugen Rochko 66e08d880c Improved admin UI
8 years ago
Eugen Rochko d0a9cbbd10 Fix timelines loading bug
8 years ago
Eugen Rochko 5e89b02bc6 Adding some navigation items from #262 to the getting started screen
8 years ago
Eugen Rochko fd1773c495 Fix metaKey usage
8 years ago
Eugen Rochko 534240240d Fix #167 - Enable cmd+enter on Mac to submit form
8 years ago
Eugen Rochko 5c306a0260 Fix #171 - You can now drag & drop files to be uploaded
8 years ago
Eugen Rochko 549633aa0e Fix #203 - try/catch around JSON parse
8 years ago
Eugen Rochko 44c725fd17 Fix #157 - labels/titles on follow/unfollow buttons
8 years ago
Eugen Rochko a2fee40e8f Fix whitespace preservation in status text
8 years ago
Eugen Rochko e9e11b0ff5 Sensitive content federates using the "nsfw" hashtag
8 years ago
Eugen Rochko 7fb69d5153 Fix translations
8 years ago
Stanislav Makar fffd718696 Declare Ukrainian
8 years ago
Vladyslav 8266ff2d69 Final steps for Ukrainian translation
8 years ago
Eugen Rochko 0f221668a3 Fix #341 - Remove react-responsive in favour of simpler resize handler/window width
8 years ago
Eugen Rochko 303044f899 Downsize originals in media attachments, small fixes
8 years ago
Eugen Rochko cc7e8339ac Fix rule
8 years ago
Eugen Rochko 9c379084a7 Fix mutating objects
8 years ago
Eugen Rochko bae8aa876a Better responsiveness
8 years ago
Eugen Rochko 595f592304 Do not autoplay videos, display play button instead. Use expiring links when using S3. Do not keep originals
8 years ago
Eugen Rochko e5c39148d7 Keep timelines in the UI trimmed when possible
8 years ago
Eugen Rochko 78d6c567b3 Make all account links into permalinks (open public except on left click)
8 years ago
Eugen Rochko ef09351a06 Fix #284 - Alignment in notifications column
8 years ago
Eugen Rochko 29bd2ba85b Fix #298 - Esc to close modal
8 years ago
Eugen b81f025a56 Merge pull request #327 from TazeTSchnitzel/clearer_unlisted
8 years ago
Andrea Faulds 3966353feb Fix line endings for Portuguese locale
8 years ago
Andrea Faulds 76bbb55d61 Replace "Unlisted mode" with more explicit text
8 years ago
unsmell 26a69d768c Create pt.jsx
8 years ago
Eugen Rochko 8d4ef0b6c3 Per-status control for unlisted mode, also federation for unlisted mode
8 years ago
Eugen Rochko 53cefcb6f8 Preparing sensitive content for text
8 years ago
Eugen Rochko 3439869ca1 Forgot to enable hungarian translation in the frontend
8 years ago
Eugen Rochko ef93efbb5b Enabling portuguese and hungarian translations, which are awfully incomplete
8 years ago
unsmell d4631d5479 activate portuguese translation
8 years ago
Eugen 313ebb4962 Merge pull request #275 from kodacs/master
8 years ago
Eugen 3d86a74933 Merge pull request #282 from nclm/misc
8 years ago
Eugen Rochko 31108d4659 Public and hashtag timelines now exclude reblogs and replies
8 years ago
nicolas dfb0bace3c Allow vertical resizing of the toot textarea
8 years ago
nicolas 12100797c4 Update fr.jsx
8 years ago
kodacs 6d952d6815 Server side HU translation + Toot fix.
8 years ago
kodacs c6353f6d39 Hungarian translation
8 years ago
nicolas b70a12c0f3 Update fr.jsx
8 years ago
Eugen Rochko ca342abbff Fix bad reference
8 years ago
Eugen Rochko 45c68c76d0 Fix forgotten reference
8 years ago
Eugen Rochko 30f9e9e624 Remove Neo4J
8 years ago
Eugen Rochko 4bbec58034 Center header in account column, hide media in "muted" status components (notifications)
8 years ago
nicolas f447649d25 Merge branch 'master' into french-translation
8 years ago
nicolas d46c2e98ee Update index.jsx
8 years ago
Eugen Rochko 90b3ff2518 Follow/unfollow button outside of dropdown, also make favs/reblogs update indicator instantly and
8 years ago
Eugen Rochko f6d196255c Fix unfollows not clearing reblogs, fix blocks not clearing reblogs and notifications,
8 years ago
Eugen Rochko cda67241d4 Merge branch 'development'
8 years ago
Eugen Rochko 1c8ca7aed5 Adding content sensitivity toggle, spoilers for media
8 years ago
nicolas 862b82051a Rename ‘Publier’ to ‘Pouet’ in French locale.
8 years ago
Eugen Rochko 3c12f6f23b Add content spoilers for media in sensitive-content statuses
8 years ago
Eugen Rochko c60df460af Rename "publish" to "toot" in english locale, fix lightbox showing old image
8 years ago
Eugen Rochko 30010a6dbd Moving some counter queries out of subqueries in the API
8 years ago
nicolas 5902e95af9 Update fr.jsx
8 years ago
nicolas 1555bf8400 Adding French locale to mastodon.jsx
8 years ago
nicolas c6ca8f8f2f First version for fr.jsx
8 years ago
nicolas 14e9972858 Create fr.jsx
8 years ago
Eugen Rochko 3624a8b6dd Try to fix for browsers that don't support notifications
8 years ago
Eugen Rochko 75590bba23 Icon for desktop notifications
8 years ago
Eugen Rochko 524847e4e1 Switch to compose route when replying and compose is not mounted
8 years ago
Eugen Rochko 80d58c6c04 Desktop notifications
8 years ago
Eugen Rochko a75ad23c83 Fix responsive layout breakpoint, replace mentions column with notifications
8 years ago
Eugen Rochko 951843e646 Adding notifications column
8 years ago
caesarologia 622b48803b Portuguese translation (front-end)
8 years ago
Eugen Rochko 575b585024 Graphic emoji in usernames in the "reblogged" string above status
8 years ago
Eugen Rochko 42fb16ec3a Activating Spanish i18n
8 years ago
victorhck 95ac094a1b fixed typos
8 years ago
Eugen 8a3ac3502e Fix syntax error
8 years ago
victorhck 73f578231c doing spanish translation
8 years ago
victorhck 709fa3e988 added spanish translation
8 years ago
Eugen Rochko a82a15a38e Adding german localization
8 years ago
Eugen Rochko 2096fc62ec Add an Intl polyfill
8 years ago
Eugen Rochko f06907eadd Remove broken test
8 years ago
Eugen Rochko 43daf0be85 Adding react-intl i18n to the frontend. No translations yet
8 years ago
Eugen Rochko 15af998d7b Support emojis in display name, bio
8 years ago
Eugen Rochko 19ea717b3c Fix wrong link header on followers API, wrong link in tabs component, order
8 years ago
Eugen Rochko 2a3ec3d5a3 Fix another mistake with infinite user list for following
8 years ago
Eugen Rochko e3556ed56d Fix another mistake
8 years ago
Eugen Rochko d2b92bca09 Fix infinite scrolling mistake
8 years ago
Eugen Rochko c244c3f7bc Infinite scroll for followers/following lists
8 years ago
Eugen Rochko b20d651b88 Fix stale reference
8 years ago
Eugen Rochko 0a8aced7f4 Making upload button into a smaller icon button
8 years ago
Eugen Rochko 0f7a388de6 Fix #110 - Make web UI use browser history, change links in e-mails to link to that
8 years ago
Eugen Rochko e60cb2792e Debounce autosuggestions requests
8 years ago
Eugen Rochko 18341b1621 Search component
8 years ago
Eugen Rochko 6206f75837 Add limit to search results
8 years ago
Eugen Rochko cbfa28b9cc Use full-text search for autosuggestions
8 years ago
Eugen Rochko 202fbc3e1b Enable emojis in reply indicator as well
8 years ago
Eugen Rochko db4df4481b Fix modals sizing and add animation to it, fix #140 by only making the text of
8 years ago
Eugen Rochko 6430d86e86 Fix #131 - Make active favourite buttons yellow
8 years ago
Eugen Rochko aed424aef0 Fix live status removal from public/hashtag channels
8 years ago
Eugen Rochko d98b43cf56 Move timelines API from statuses to its own controller, add a check for
8 years ago
Eugen Rochko 46191e7071 Adding Emoji One
8 years ago
Eugen Rochko 5d46b8d285 Click video player to toggle playback
8 years ago
Eugen Rochko 4a9a053b90 Better look/behaviours for video player/lightbox
8 years ago
Eugen Rochko 24abc550ab Replace react-skylight with own solution that centers images better
8 years ago
Eugen Rochko 4d2b690582 Do not modify scroll position unless content has been added to the top, not bottom
8 years ago
Eugen Rochko 8ac4c4eed1 Keep scroll position when scrolled down and new content is added
8 years ago
Eugen Rochko 6d948a809e Account notes (bios) can now contain links. Character limit upped to 160
8 years ago
Eugen Rochko c6461dc247 Fix remote hashtag linking
8 years ago
Eugen Rochko bb517d832d Fix mistake
8 years ago
Eugen Rochko 814907e870 Fix linking of remote hashtags in UI, add public view of hashtags
8 years ago
Eugen Rochko cb22dce970 Adding hashtags
8 years ago
Eugen Rochko c625dd46d0 Add forgotten reducer for FAVOURITES_FETCH_SUCCESS
8 years ago
Eugen Rochko 5285e9b1f9 Adding list of who favourited status
8 years ago
Eugen Rochko 12a420f0f3 Reduce code duplication, add touch scrolling behaviour for webkit browsers
8 years ago
Eugen Rochko ef16a48c5f Optimize how statuses are re-rendered and relative time intervals
8 years ago
Eugen Rochko 1f9aaede07 Add list of who reblogged status
8 years ago
Eugen Rochko db3322033f Aria-labels actually didn't work in React, so removing. Fixing some bugs
8 years ago
Eugen Rochko be2b3eb241 Fix #136: Add aria-labels
8 years ago
Eugen Rochko 4c3885b952 Allow @username@domain/@username in follow form, prevent duplicate accounts
8 years ago
Eugen Rochko 6c4efc9cab Add own composed status to home without waiting for websocket event
8 years ago
Eugen Rochko 72565e9e61 Fix subtle bugs, new icon button
8 years ago
Eugen e0d7b3401c Merge pull request #132 from marcus-herrmann/master
8 years ago
mhe 7867bfc281 a11y: Improve icon button component regarding semantics and screen reader usage
8 years ago
Frederic Hemberger 1a6e13a4e5 a11y: Add labels to input fields for screenreader
8 years ago
Eugen Rochko 36470feeb2 Fix follow icon changing plus to minus, add terms page stub
8 years ago
Eugen Rochko 31cacef08b Actually fix the reblogs/favs reducer issue
8 years ago
Eugen 8c3f7964fb Fix forgotten reducers for reblogs/favourites
8 years ago
Eugen 543e8d6a20 Fix accounts not being normalized from context statuses
8 years ago
Eugen Rochko 6448169447 Actually complete the autosuggestion feature
8 years ago
Eugen Rochko b91faaebbb Basic username autocomplete for text area
8 years ago
Eugen Rochko 53de3b66ce Refactoring redux state into different reducers
8 years ago
Eugen Rochko 1c157c040a Hide notes on user lists for now
8 years ago
Eugen Rochko f9e06eb819 Make suggestions box also use user list components
8 years ago
Eugen Rochko 553760399f Improved how user lists look, added follow button to them
8 years ago
Eugen Rochko b3aab1f3bc Adding following/followers lists to the UI
8 years ago
Eugen Rochko 43905dd59a Guard against unexisting statuses rendering
8 years ago
Eugen Rochko 68535f58cd Add opening images in a modal window
8 years ago
Eugen Rochko 5bea337189 Move status components inside individual containers. We still need to select
8 years ago
Eugen Rochko 4470966cd9 Fix #100 - Add "back" button to certain views
8 years ago
Eugen Rochko fac770fccd Remember scroll position when navigating back, do not needlessly reload
8 years ago
Eugen Rochko 9d7c7bd342 Improve how errors are displayed in the UI
8 years ago
Eugen Rochko f4376d4d01 Small clean up
8 years ago
Eugen Rochko f9659685ab This should fix it
8 years ago
Eugen Rochko 4a2cb79b58 Debugging
8 years ago
Eugen Rochko e052929058 More debugging
8 years ago
Eugen Rochko f3a6be81cc More debugging
8 years ago
Eugen Rochko b92c8c3f87 More debugging
8 years ago
Eugen Rochko f06a788e19 More debugging
8 years ago
Eugen Rochko 1abe6ed990 Will this fix the issue?
8 years ago
Eugen Rochko 032de4b5e8 More debugging
8 years ago
Eugen Rochko b9ace5a74c Add console.error to all axios failures
8 years ago
Eugen Rochko 9dab51e047 Fix #82 - only show latest reblog of status in UI
8 years ago
Eugen Rochko b1dee1b6d1 Fix #99 - public timeline not just reblogs, fix #98 infinite scrolling issues
8 years ago
Eugen Rochko 7b52b5ab9e Don't preload timelines as props, load them when timeline component is mounted
8 years ago
Eugen Rochko 1715657fa3 Fix scrolling on small devices for account timelines and compose column
8 years ago
Eugen Rochko 916907580e Backfill follow suggestions with fallback when not enough results. Cycling
8 years ago
Eugen Rochko 4e89662eea Fix typo
8 years ago
Eugen Rochko 52a5ad8207 Fix follow suggestions ranking
8 years ago
Eugen Rochko 2614a47a15 Exclude blocked users from follow suggestions, fix tests
8 years ago
Eugen Rochko f4e5ca98bf Fix suggestions box style for long names
8 years ago
Eugen Rochko 92209a1b6e Display follow suggestions
8 years ago
Eugen Rochko 5860094354 Adding sync of follow relationships to Neo4J, accounts/suggestions API
8 years ago
Eugen Rochko 6f1497586c Add "edit profile" link to dropdown on own profile
8 years ago
Eugen Rochko 588cb77e9f E-mail preferences page
8 years ago
Eugen Rochko 32b6dc088e Add window titles to auth pages and about page, link sign up/login from about page
8 years ago
Eugen Rochko 6f26b06454 Fix styles
8 years ago
Eugen Rochko d70e728326 Responsively changing layout to single-column + nav on smaller screens
8 years ago
Eugen Rochko 848cbbd242 Improved how in-UI profiles look
8 years ago
Eugen Rochko 22e05d2ff6 Making AccountTimeline into a sub-route
8 years ago
Eugen Rochko 4f9ac5a611 Fix mistake
8 years ago
Eugen Rochko 1d63e39a00 Add link to public timeline to getting started screen
8 years ago
Eugen Rochko f10b5ee0d8 Use reselect to memoize denormalization in UI state
8 years ago
Eugen Rochko c3f5dfeabb Adding public timeline
8 years ago
Eugen Rochko 93aa4085a2 Fix #73 - Click on in-UI profile avatar/name to open public profile
8 years ago
Eugen Rochko 4eb5319882 Styling loading indicator, removing unused routes, adding "getting started" explanation
8 years ago
Eugen Rochko cad6653af0 Fix how missing display name is displayed (fallback to username)
8 years ago
Eugen Rochko 9c01f3fcf0 Fix delete option missing from statuses in detailed view
8 years ago
Eugen Rochko b62d8e2d5b Fix #76 - set scrollTop property of element node rather than use scrollTo() method
8 years ago
Eugen Rochko f9f9d74053 Fix #71 - Add logout link to UI
8 years ago
Eugen Rochko f621ee8101 Fix #70 - disable autocomplete on follow form
8 years ago
Eugen Rochko 70e9dd0b5b Blocking will prevent e-mail notifications from blocked user, blocks in UI
8 years ago
Eugen Rochko 7b9a4af311 API for blocking and unblocking
8 years ago
Eugen Rochko 1fce687f8e Unreblogging and unfavouriting from the UI
8 years ago
Eugen Rochko ef2b50c9ac Deleting statuses from UI
8 years ago
Eugen Rochko e63aebff7a Adding landing page
8 years ago
Eugen Rochko 45a96e899e Fix #58 - disable compose form while image is uploading
8 years ago
Eugen Rochko 4f9b7432dd Fix #52 - Add API versioning (v1)
8 years ago
Eugen Rochko 7e14eefc81 Replace logo, fix #57 - delete/unreblog/unfavourite API, fix #45 - app
8 years ago
Eugen Rochko 0bd4608ad1 Fix #55 - Filter self from pre-filled mentions
8 years ago
Eugen Rochko 693383234c Improved style of settings page
8 years ago
Eugen Rochko e9bc4a4a08 Limit usernames to 30 chars, statuses to 500, open account after follow form success
8 years ago
Eugen Rochko 62b384824d Improved styling for media/videos in detailed status view
8 years ago
Eugen Rochko 15f51dbf8c Better styling for selected status in detailed view
8 years ago
Eugen Rochko 95d72b2249 Temporarily link "settings" to the static version of the form
8 years ago
Eugen Rochko 0c75ce1122 Improved ColumnsArea on smaller windows, improved how ActionBar looks
8 years ago
Eugen Rochko 3f9708edc4 Change output of api/accounts/:id/follow and unfollow to return relationship
8 years ago
Eugen Rochko c6d893a71d Uploading/undoing media modifies status text. Also: status text trimmed before validation
8 years ago
Eugen Rochko b1a670af8d Handle remote account mentions a little better by trying a URL lookup in the db
8 years ago
Eugen Rochko 2a84271e85 Infinite scroll for account timelines
8 years ago
Eugen Rochko 2c0261ac25 Infinite scroll for timeline columns
8 years ago
Eugen Rochko 74dfefabd3 Make in-text mentions open account detailed view when possible
8 years ago
Eugen Rochko bc98865c1a API returns mentions for statuses, compose form pre-fills all relevant usernames into the form when replying
8 years ago
Eugen Rochko e46abc71ca Fix notifications in UI, added new API for fetching account relationships
8 years ago
Eugen Rochko 6d89edc4f7 Fix #47 by renaming TIMELINE_SET action to TIMELINE_REFRESH_SUCCESS
8 years ago
Eugen Rochko a86f21cf90 Fix rake tasks and loading bar
8 years ago
Eugen Rochko 1245ee42fb Update OStatus2 library
8 years ago
Eugen Rochko 98de6927f3 Remove background mask from avatars
8 years ago
Eugen Rochko 337462aa5e Re-organizing components to be more modular, adding loading bars
8 years ago
Eugen Rochko f820edb463 Fix type mistake in account component
8 years ago
Eugen Rochko ee770c3fd3 Live update account timelines, small fix for replyCompose
8 years ago
Eugen Rochko 0967961de7 Improve how account detailed view looks, load account's statuses
8 years ago
Eugen Rochko dafcb02153 Remove unused action constants
8 years ago
Eugen Rochko 08896f7dcf Detailed status view scrollable
8 years ago
Eugen Rochko ab7291b8fe Add ancestors/descendants during normalization in timeline reducer
8 years ago
Eugen Rochko dfd5deacf4 Volume toggle control in VideoPlayer
8 years ago
Eugen Rochko 5342629a0a Adding webm playback to UI
8 years ago
Eugen Rochko bd5ad304ba Adding media controller, 1 webm/compose form allowed, previews generated
8 years ago
Eugen Rochko 0e9c1a297a Improved error handling for FollowRemoteService
8 years ago
Eugen Rochko 8c0b19012b Fix #41, debug #42
8 years ago
Eugen e906677092 Stop event propagation after IconButton onClick
8 years ago
Eugen Rochko 5b0cef9781 Setting up preliminary "detailed" routes in the UI, new API end-point for fetching status context
8 years ago
Eugen Rochko 2e7aac793a Adding sense of self to the UI, cleaning up routing, adding third (detail) column
8 years ago
Eugen Rochko d6a64f45fd Adding a notification stack for error messages
8 years ago
Eugen Rochko ce29624c6d Fixing image upload limits, allowing webm, merge/unmerge events trigger
8 years ago
Eugen Rochko 0077fc26df Merge and unmerge timelines on follow/unfollow, solves #21, #22
8 years ago
Eugen de7eb2341a Fix typo in deleteFromTimelines action creator
8 years ago
Eugen Rochko 0f4bc56719 Improving production logs, removing n+1 on media attachments in atom,
8 years ago
Eugen Rochko 499beb4484 UI for uploading media attachments (and cancelling them)
8 years ago
Eugen Rochko aca988a16b Fix for Drawer growing horizontally
8 years ago
Eugen Rochko 75fbde1c1a Fixed styling for media attachments in statuses (margins)
8 years ago
Eugen Rochko ac77170d19 Add icons to column headers, click them to scroll to top
8 years ago
Eugen Rochko 1f18cf97b5 Fix styling of media attachments in statuses
8 years ago
Eugen 265215dae9 Fix reply bug introduced when compose form started using normalized data
8 years ago
Eugen Rochko 5f36d8828a Better layout for attachments in <MediaGallery>
8 years ago
Eugen Rochko fc222dfa49 Displaying media attachments in timelines
8 years ago
Eugen Rochko 05001d54d1 Make compose form also use normalized data
8 years ago
Eugen Rochko 926eea89b5 RemoveStatusService fleshed out, still doesn't send Salmon slaps though
8 years ago
Eugen Rochko 1022d682dc Normalized data in Redux, fix for asset URLs when rendered outside request
8 years ago
Eugen Rochko d0e2733f63 Fix reblogs of reblogs in UI, add follow form in UI
8 years ago
Eugen Rochko 2d57bcf1b7 Preparing for follow form
8 years ago
Eugen Rochko c249ceb10c Reblogs fixed
8 years ago
Eugen Rochko 595c8dda60 Favouriting works, reblogging is a little broken because of <Status>
8 years ago
Eugen Rochko c2a4d70265 Small style fixes
8 years ago
Eugen Rochko 2093cda89a Fixing one more typo
8 years ago
Eugen Rochko d6873797ac Fix typo
8 years ago
Eugen Rochko dbae8062f4 Replies in the compose form
8 years ago
Eugen Rochko 1e0e17ba85 Improving styling a little bit
8 years ago
Eugen Rochko 72591cc6d5 Cleaning up action names and compose drawer
8 years ago
Eugen Rochko 92afd29650 The frontend will now be an OAuth app, auto-authorized. The frontend will use an access token for API requests
8 years ago
Eugen Rochko 44e57f64dd Improving statuses, adding a composer drawer, which doesn't work yet
8 years ago
Eugen f5e1127894 Forgotten return
8 years ago
Eugen Rochko a541e937ca More styling for statuses
8 years ago
Eugen Rochko bc0692d75b Removing mini-profiler that doesn't work, formatting timelines a bit better
8 years ago
Eugen Rochko 49520d6e62 Adding React.js, Redux, revamping dashboard
8 years ago